changeset 5747:afe424ee3240

Merge
author asaha
date Tue, 08 May 2012 07:34:53 -0700
parents 95998c60ab4b (current diff) 9e82ac15ab80 (diff)
children 3a2cfce96908
files src/share/lib/security/java.security src/share/lib/security/java.security-solaris src/share/lib/security/java.security-windows test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll
diffstat 641 files changed, 56473 insertions(+), 7722 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Wed Apr 11 17:47:56 2012 -0700
+++ b/.hgtags	Tue May 08 07:34:53 2012 -0700
@@ -155,3 +155,6 @@
 27f0c08c427c65fcab6917edf646f59058e59524 jdk8-b31
 ddfe5562f61f54ed2121ac0c73b688b94f3e66b5 jdk8-b32
 78cea258caaba3980ba186c426da82c8fe41bfd7 jdk8-b33
+29b680393f33bf953688c17d93aca7a870ca4024 jdk8-b34
+2e3e1356ffbddb2ae95c08da72830ba9ab8b3181 jdk8-b35
+45da9cb055ee258dc09e69c1718e27eadea38e45 jdk8-b36
--- a/make/com/sun/tools/attach/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/com/sun/tools/attach/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. 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
@@ -24,6 +24,8 @@
 #
 
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../../..
 PACKAGE = com.sun.tools.attach
 LIBRARY = attach
--- a/make/common/Defs-linux.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Defs-linux.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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
@@ -53,6 +53,11 @@
   PLATFORM_SRC = $(BUILDDIR)/../src/solaris
 endif # PLATFORM_SRC
 
+# Location of the various .properties files specific to Linux platform
+ifndef PLATFORM_PROPERTIES
+  PLATFORM_PROPERTIES  = $(BUILDDIR)/../src/solaris/lib
+endif # PLATFORM_SRC
+
 # Platform specific closed sources
 ifndef OPENJDK
   ifndef CLOSED_PLATFORM_SRC
@@ -73,55 +78,90 @@
 # CC compiler object code output directive flag value
 CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
 
-# Default OBJCOPY comes from GNU Binutils on Linux:
-DEF_OBJCOPY=/usr/bin/objcopy
-ifdef CROSS_COMPILE_ARCH
-  # don't try to generate .debuginfo files when cross compiling
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
-      "skipping .debuginfo generation.")
-  OBJCOPY=
-else
-  OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
-  ifneq ($(ALT_OBJCOPY),)
-    _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
-    # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
-    OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
-  endif
-endif
+# The Full Debug Symbols (FDS) default for VARIANT == OPT builds is
+# enabled with debug info files ZIP'ed to save space. For VARIANT !=
+# OPT builds, FDS is always enabled, after all a debug build without
+# debug info isn't very useful. The ZIP_DEBUGINFO_FILES option only has
+# meaning when FDS is enabled.
+#
+# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
+# disabled for a VARIANT == OPT build.
+#
+# Note: Use of a different variable name for the FDS override option
+# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
+# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
+# in options via environment variables, use of distinct variables
+# prevents strange behaviours. For example, in a VARIANT != OPT build,
+# the FULL_DEBUG_SYMBOLS environment variable will be 0, but the
+# ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If the same
+# variable name is used, then different values can be picked up by
+# different parts of the build. Just to be clear, we only need two
+# variable names because the incoming option value can be overridden
+# in some situations, e.g., a VARIANT != OPT build.
 
-ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
-# The setting of OBJCOPY above enables the JDK build to import
-# .debuginfo files from the HotSpot build. However, adding FDS
-# support to the JDK build will occur in phases so a different
-# make variable is used to indicate that a particular library
-# supports FDS.
-
-ifeq ($(OBJCOPY),)
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
+ifeq ($(VARIANT), OPT)
+  FULL_DEBUG_SYMBOLS ?= 1
+  ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
 else
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+  # debug variants always get Full Debug Symbols (if available)
+  ENABLE_FULL_DEBUG_SYMBOLS = 1
+endif
+_JUNK_ := $(shell \
+  echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
+# since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
 
-  # Library stripping policies for .debuginfo configs:
-  #   all_strip - strips everything from the library
-  #   min_strip - strips most stuff from the library; leaves minimum symbols
-  #   no_strip  - does not strip the library at all
-  #
-  # Oracle security policy requires "all_strip". A waiver was granted on
-  # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
-  #
-  DEF_STRIP_POLICY="min_strip"
-  ifeq ($(ALT_STRIP_POLICY),)
-    STRIP_POLICY=$(DEF_STRIP_POLICY)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  # Default OBJCOPY comes from GNU Binutils on Linux:
+  DEF_OBJCOPY=/usr/bin/objcopy
+  ifdef CROSS_COMPILE_ARCH
+    # don't try to generate .debuginfo files when cross compiling
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
+        "skipping .debuginfo generation.")
+    OBJCOPY=
   else
-    STRIP_POLICY=$(ALT_STRIP_POLICY)
+    OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
+    ifneq ($(ALT_OBJCOPY),)
+      _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
+      # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
+      OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
+    endif
   endif
 
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
-endif
+  # Setting ENABLE_FULL_DEBUG_SYMBOLS=1 (and OBJCOPY) above enables the
+  # JDK build to import .debuginfo or .diz files from the HotSpot build.
+  # However, adding FDS support to the JDK build will occur in phases
+  # so a different make variable (LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+  # and PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS) is used to indicate that a
+  # particular library or program supports FDS.
+
+  ifeq ($(OBJCOPY),)
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
+    ENABLE_FULL_DEBUG_SYMBOLS=0
+  else
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+
+    # Library stripping policies for .debuginfo configs:
+    #   all_strip - strips everything from the library
+    #   min_strip - strips most stuff from the library; leaves minimum symbols
+    #   no_strip  - does not strip the library at all
+    #
+    # Oracle security policy requires "all_strip". A waiver was granted on
+    # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
+    #
+    # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
+    STRIP_POLICY ?= min_strip
+
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
+
+    ZIP_DEBUGINFO_FILES ?= 1
+
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")
+  endif
 endif
 
 #
@@ -220,6 +260,17 @@
   CFLAGS_REQUIRED += $(DEBUG_FLAG)
 endif
 
+# If Full Debug Symbols is enabled, then we want the same debug and
+# optimization flags as used by FASTDEBUG.
+#
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(VARIANT), OPT)
+      CC_OPT = $(DEBUG_FLAG) $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+    endif
+  endif
+endif
+
 CFLAGS_OPT      = $(CC_OPT)
 CFLAGS_DBG      = $(DEBUG_FLAG)
 CFLAGS_COMMON += $(CFLAGS_REQUIRED)
@@ -412,6 +463,7 @@
 HOTSPOT_SALIB_PATH   = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
 SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
 SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
+SA_DIZ_NAME = $(LIB_PREFIX)saproc.diz
 
 # The JDI - Serviceability Agent binding is not currently supported
 # on Linux-ia64.
--- a/make/common/Defs-macosx.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Defs-macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -53,6 +53,11 @@
   PLATFORM_SRC = $(BUILDDIR)/../src/solaris
 endif # PLATFORM_SRC
 
+# Location of the various .properties files specific to MacOS X platform
+ifndef PLATFORM_PROPERTIES
+  PLATFORM_PROPERTIES  = $(BUILDDIR)/../src/macosx/lib
+endif # PLATFORM_SRC
+
 PLATFORM_SRC_MACOS = $(BUILDDIR)/../src/macosx
 
 # BSD build pulls its platform sources from the solaris tree.
--- a/make/common/Defs-solaris.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Defs-solaris.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2012, Oracle and/or its affiliates. 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
@@ -51,6 +51,11 @@
 PLATFORM_SRC = $(BUILDDIR)/../src/solaris
 endif # PLATFORM_SRC
 
+# Location of the various .properties files specific to Solaris platform
+ifndef PLATFORM_PROPERTIES
+  PLATFORM_PROPERTIES  = $(BUILDDIR)/../src/solaris/lib
+endif # PLATFORM_SRC
+
 # Platform specific closed sources
 ifndef OPENJDK
   ifndef CLOSED_PLATFORM_SRC
@@ -73,67 +78,98 @@
 # CC compiler object code output directive flag value
 CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
 
-ifdef ENABLE_FULL_DEBUG_SYMBOLS
-# Only check for Full Debug Symbols support on Solaris if it is
-# specifically enabled. Hopefully, it can be enabled by default
-# once the .debuginfo size issues are worked out.
+# The Full Debug Symbols (FDS) default for VARIANT == OPT builds is
+# enabled with debug info files ZIP'ed to save space. For VARIANT !=
+# OPT builds, FDS is always enabled, after all a debug build without
+# debug info isn't very useful. The ZIP_DEBUGINFO_FILES option only has
+# meaning when FDS is enabled.
+#
+# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
+# disabled for a VARIANT == OPT build.
+#
+# Note: Use of a different variable name for the FDS override option
+# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
+# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
+# in options via environment variables, use of distinct variables
+# prevents strange behaviours. For example, in a VARIANT != OPT build,
+# the FULL_DEBUG_SYMBOLS environment variable will be 0, but the
+# ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If the same
+# variable name is used, then different values can be picked up by
+# different parts of the build. Just to be clear, we only need two
+# variable names because the incoming option value can be overridden
+# in some situations, e.g., a VARIANT != OPT build.
 
-# Default OBJCOPY comes from the SUNWbinutils package:
-DEF_OBJCOPY=/usr/sfw/bin/gobjcopy
-ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64)
-  # On Solaris AMD64/X64, gobjcopy is not happy and fails:
-  #
-  # usr/sfw/bin/gobjcopy --add-gnu-debuglink=<lib>.debuginfo <lib>.so
-  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
-  # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
-  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
-  # /usr/sfw/bin/gobjcopy: libsaproc.debuginfo: Bad value
-  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
-  # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: $(DEF_OBJCOPY) is not working on Solaris AMD64/X64")
-  OBJCOPY=
+ifeq ($(VARIANT), OPT)
+  FULL_DEBUG_SYMBOLS ?= 1
+  ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
 else
-  OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
-  ifneq ($(ALT_OBJCOPY),)
-    _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
-    # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
-    OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
-  endif
+  # debug variants always get Full Debug Symbols (if available)
+  ENABLE_FULL_DEBUG_SYMBOLS = 1
 endif
+_JUNK_ := $(shell \
+  echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
+# since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
 
-ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
-# The setting of OBJCOPY above enables the JDK build to import
-# .debuginfo files from the HotSpot build. However, adding FDS
-# support to the JDK build will occur in phases so a different
-# make variable is used to indicate that a particular library
-# supports FDS.
-
-ifeq ($(OBJCOPY),)
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
-else
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  # Default OBJCOPY comes from the SUNWbinutils package:
+  DEF_OBJCOPY=/usr/sfw/bin/gobjcopy
+  ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64)
+    # On Solaris AMD64/X64, gobjcopy is not happy and fails:
+    #
+    # usr/sfw/bin/gobjcopy --add-gnu-debuglink=<lib>.debuginfo <lib>.so
+    # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+    # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
+    # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+    # /usr/sfw/bin/gobjcopy: libsaproc.debuginfo: Bad value
+    # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+    # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: $(DEF_OBJCOPY) is not working on Solaris AMD64/X64")
+    OBJCOPY=
+  else
+    OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
+    ifneq ($(ALT_OBJCOPY),)
+      _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
+      # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
+      OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
+    endif
+  endif
 
-  # Library stripping policies for .debuginfo configs:
-  #   all_strip - strips everything from the library
-  #   min_strip - strips most stuff from the library; leaves minimum symbols
-  #   no_strip  - does not strip the library at all
-  #
-  # Oracle security policy requires "all_strip". A waiver was granted on
-  # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
-  #
-  DEF_STRIP_POLICY="min_strip"
-  ifeq ($(ALT_STRIP_POLICY),)
-    STRIP_POLICY=$(DEF_STRIP_POLICY)
+  # Setting ENABLE_FULL_DEBUG_SYMBOLS=1 (and OBJCOPY) above enables the
+  # JDK build to import .debuginfo or .diz files from the HotSpot build.
+  # However, adding FDS support to the JDK build will occur in phases
+  # so a different make variable (LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+  # and PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS) is used to indicate that a
+  # particular library or program supports FDS.
+
+  ifeq ($(OBJCOPY),)
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
+    ENABLE_FULL_DEBUG_SYMBOLS=0
   else
-    STRIP_POLICY=$(ALT_STRIP_POLICY)
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+
+    # Library stripping policies for .debuginfo configs:
+    #   all_strip - strips everything from the library
+    #   min_strip - strips most stuff from the library; leaves minimum symbols
+    #   no_strip  - does not strip the library at all
+    #
+    # Oracle security policy requires "all_strip". A waiver was granted on
+    # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
+    #
+    #
+    # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
+    STRIP_POLICY ?= min_strip
+
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
+
+    ZIP_DEBUGINFO_FILES ?= 1
+
+    _JUNK_ := $(shell \
+      echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")
   endif
-  _JUNK_ := $(shell \
-    echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
-endif
-endif
 endif
 
 #
@@ -203,6 +239,21 @@
   CXXFLAGS_DEBUG_OPTION  = -g0 $(CXX_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
 endif
 
+# If Full Debug Symbols is enabled, then we want the same debug and
+# optimization flags as used by FASTDEBUG. We also want all the
+# debug info in one place (-xs).
+#
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(VARIANT), OPT)
+      CC_OPT   = -g  -xs $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+      CXX_OPT  = -g0 -xs $(CXX_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+    endif
+    CFLAGS_DEBUG_OPTION    += -xs
+    CXXFLAGS_DEBUG_OPTION  += -xs
+  endif
+endif
+
 CFLAGS_COMMON   = -L$(OBJDIR)
 
 # Do not allow C99 language features like declarations in code etc.
@@ -753,5 +804,6 @@
 HOTSPOT_SALIB_PATH   = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
 SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
 SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
+SA_DIZ_NAME = $(LIB_PREFIX)saproc.diz
 INCLUDE_SA=true
 
--- a/make/common/Defs-windows.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Defs-windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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
@@ -52,6 +52,11 @@
   PLATFORM_SRC  = $(BUILDDIR)/../src/windows
 endif # PLATFORM_SRC
 
+# Location of the various .properties files specific to Windows platform
+ifndef PLATFORM_PROPERTIES
+  PLATFORM_PROPERTIES  = $(BUILDDIR)/../src/windows/lib
+endif # PLATFORM_SRC
+
 # Platform specific closed sources
 ifndef OPENJDK
   ifndef CLOSED_PLATFORM_SRC
@@ -75,6 +80,45 @@
 
 EXTRA_LFLAGS += /LIBPATH:$(DXSDK_LIB_PATH)
 
+# Full Debug Symbols has been enabled on Windows since JDK1.4.1.
+# The Full Debug Symbols (FDS) default for VARIANT == OPT builds is
+# enabled with debug info files ZIP'ed to save space. For VARIANT !=
+# OPT builds, FDS is always enabled, after all a debug build without
+# debug info isn't very useful. The ZIP_DEBUGINFO_FILES option only has
+# meaning when FDS is enabled.
+#
+# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
+# disabled for a VARIANT == OPT build.
+#
+# Note: Use of a different variable name for the FDS override option
+# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
+# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
+# in options via environment variables, use of distinct variables
+# prevents strange behaviours. For example, in a VARIANT != OPT build,
+# the FULL_DEBUG_SYMBOLS environment variable will be 0, but the
+# ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If the same
+# variable name is used, then different values can be picked up by
+# different parts of the build. Just to be clear, we only need two
+# variable names because the incoming option value can be overridden
+# in some situations, e.g., a VARIANT != OPT build.
+
+ifeq ($(VARIANT), OPT)
+  FULL_DEBUG_SYMBOLS ?= 1
+  ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
+else
+  # debug variants always get Full Debug Symbols (if available)
+  ENABLE_FULL_DEBUG_SYMBOLS = 1
+endif
+_JUNK_ := $(shell \
+  echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
+
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ZIP_DEBUGINFO_FILES ?= 1
+else
+  ZIP_DEBUGINFO_FILES=0
+endif
+_JUNK_ := $(shell echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")
+
 # C Compiler flag definitions
 
 #
@@ -201,7 +245,10 @@
   #   /D _STATIC_CPPLIB
   #            Use static link for the C++ runtime (so msvcpnn.dll not needed)
   #   
-  CFLAGS_COMMON  += -Zi -nologo
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    CFLAGS_COMMON  += -Zi
+  endif
+  CFLAGS_COMMON  += -nologo
   CFLAGS_OPT      = $(CC_OPT)
   CFLAGS_DBG      = -Od $(MS_RUNTIME_DEBUG_OPTION)
 
@@ -210,7 +257,9 @@
   # All builds get the same runtime setting
   CFLAGS_COMMON += $(MS_RUNTIME_OPTION) $(CFLAGS_$(COMPILER_VERSION))
 
-  LDEBUG = /debug
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    LDEBUG = /debug
+  endif
   
   ifeq ($(VTUNE_SUPPORT), true)
     OTHER_CFLAGS = -Z7 -Ox 
@@ -244,7 +293,9 @@
 #
 # Output options (use specific filenames to avoid parallel compile errors)
 #
-CFLAGS_COMMON += -Fd$(OBJDIR)/$(basename $(@F)).pdb -Fm$(OBJDIR)/$(basename $(@F)).map
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  CFLAGS_COMMON += -Fd$(OBJDIR)/$(basename $(@F)).pdb -Fm$(OBJDIR)/$(basename $(@F)).map
+endif
 
 #
 # Use -wdNNNN to disable warning NNNN.
@@ -305,6 +356,7 @@
 SALIB_NAME = $(LIB_PREFIX)sawindbg.$(LIBRARY_SUFFIX)
 SAMAP_NAME = $(LIB_PREFIX)sawindbg.map
 SAPDB_NAME = $(LIB_PREFIX)sawindbg.pdb
+SA_DIZ_NAME = $(LIB_PREFIX)sawindbg.diz
 
 ifeq ($(ARCH), ia64)
   # SA will never be supported here.
--- a/make/common/Library.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Library.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2012, Oracle and/or its affiliates. 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
@@ -167,17 +167,32 @@
 # build it into $(OBJDIR) so that the other generated files get put 
 # there, then copy just the DLL (and MAP file) to the requested directory.
 #
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  MAP_OPTION="-map:$(OBJDIR)/$(LIBRARY).map"
+endif
+
 $(ACTUAL_LIBRARY):: $(OBJDIR)/$(LIBRARY).lcf
 	@$(prep-target)
 	@$(MKDIR) -p $(OBJDIR)
 	$(LINK) -dll -out:$(OBJDIR)/$(@F) \
-	  -map:$(OBJDIR)/$(LIBRARY).map \
+	  $(MAP_OPTION) \
 	  $(LFLAGS) @$(OBJDIR)/$(LIBRARY).lcf \
 	  $(OTHER_LCF) $(LDLIBS)
 	$(CP) $(OBJDIR)/$(@F) $@
 	@$(call binary_file_verification,$@)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	(set -e ; \
+	 $(CD) $(OBJDIR) ; \
+	 $(ZIPEXE) -q $(LIBRARY).diz $(LIBRARY).map $(LIBRARY).pdb ; \
+	)
+	$(CP) $(OBJDIR)/$(LIBRARY).diz $(@D)
+	$(RM) $(OBJDIR)/$(LIBRARY).map $(OBJDIR)/$(LIBRARY).pdb
+  else
 	$(CP) $(OBJDIR)/$(LIBRARY).map $(@D)
 	$(CP) $(OBJDIR)/$(LIBRARY).pdb $(@D)
+  endif
+endif
 
 endif # LIBRARY
 
@@ -242,6 +257,37 @@
 ifeq ($(WRITE_LIBVERSION),true)
 	$(MCS) -d -a "$(FULL_VERSION)" $@
 endif # WRITE_LIBVERSION
+  ifneq ($(PLATFORM), macosx)
+    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+      ifeq ($(LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
+	(set -e ; \
+	 $(CD) $(@D) ; \
+	 $(OBJCOPY) --only-keep-debug $(@F) $(LIBRARY).debuginfo ; \
+	 $(OBJCOPY) --add-gnu-debuglink=$(LIBRARY).debuginfo $(@F) ; \
+	)
+        ifeq ($(STRIP_POLICY),all_strip)
+	  $(STRIP) $@
+        else
+          ifeq ($(STRIP_POLICY),min_strip)
+            ifeq ($(PLATFORM), solaris)
+	      $(STRIP) -x $@
+            else
+              # assume Linux
+	      $(STRIP) -g $@
+            endif
+          # implied else here is no stripping at all
+          endif
+        endif
+        ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	  (set -e ; \
+	   $(CD) $(@D) ; \
+	   $(ZIPEXE) -q $(LIBRARY).diz $(LIBRARY).debuginfo ; \
+	   $(RM) $(LIBRARY).debuginfo ; \
+	  )
+        endif
+      endif # LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+    endif # ENABLE_FULL_DEBUG_SYMBOLS
+  endif # PLATFORM-!macosx
 endif # LIBRARY
 
 endif # PLATFORM
--- a/make/common/Program.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Program.gmk	Tue May 08 07:34:53 2012 -0700
@@ -171,6 +171,10 @@
 	@$(prep-target)
 	$(SED) 's%IMVERSION%$(IMVERSION)%g;s%PROGRAM%$(PROGRAM)%g' $< > $@
 
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  MAP_OPTION="-map:$(OBJDIR)/$(PROGRAM).map"
+endif
+
   # We used a hand-crafted manifest file for all executables.
   # It is tweaked to embed the build number and executable name.
   # Use ";#2" for .dll and ";#1" for .exe in the MT command below:
@@ -179,12 +183,21 @@
 	@set -- $?; \
 	    $(ECHO) Rebuilding $@ because of $$1 $$2 $$3 $$4 $$5 $$6 $${7:+...};
 	$(LINK) -out:$@ /STACK:$(STACK_SIZE) \
-	    -map:$(OBJDIR)/$(PROGRAM).map $(LFLAGS) $(LDFLAGS) \
+	    $(MAP_OPTION) $(LFLAGS) $(LDFLAGS) \
 	    @$(OBJDIR)/$(PROGRAM).lcf $(LDLIBS)
   ifdef MT
 	$(MT) /manifest $(OBJDIR)/$(PROGRAM).exe.manifest /outputresource:$@;#1
   endif
 	@$(call binary_file_verification,$@)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	(set -e ; \
+	 $(CD) $(OBJDIR) ; \
+	 $(ZIPEXE) -q $(PROGRAM).diz $(PROGRAM).map $(PROGRAM).pdb ; \
+	 $(RM) $(PROGRAM).map $(PROGRAM).pdb ; \
+	)
+    endif
+  endif
 else
   #
   # Note that we have to link -lthread even when USE_PTHREADS is true.
@@ -228,6 +241,42 @@
 	-codesign -s openjdk_codesign $@
   endif
 	@$(call binary_file_verification,$@)
+  ifneq ($(PLATFORM), macosx)
+    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+      ifeq ($(PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS),1)
+	(set -e ; \
+	 $(CD) $(@D) ; \
+	 $(OBJCOPY) --only-keep-debug $(@F) $(@F).debuginfo ; \
+	 $(OBJCOPY) --add-gnu-debuglink=$(@F).debuginfo $(@F) ; \
+	)
+        ifeq ($(STRIP_POLICY),all_strip)
+	  $(STRIP) $@
+        else
+          ifeq ($(STRIP_POLICY),min_strip)
+            ifeq ($(PLATFORM), solaris)
+	      $(STRIP) -x $@
+            else
+              # assume Linux
+	      $(STRIP) -g $@
+            endif
+          # implied else here is no stripping at all
+          endif
+        endif
+        ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	  (set -e ; \
+	   $(CD) $(@D) ; \
+	   $(ZIPEXE) -q $(@F).diz $(@F).debuginfo ; \
+	   $(RM) $(@F).debuginfo ; \
+	  )
+          # save ZIP'ed debug info with rest of the program's build artifacts
+	  $(MV) $@.diz $(OBJDIR)
+        else
+          # save debug info with rest of the program's build artifacts
+	  $(MV) $@.debuginfo $(OBJDIR)
+        endif
+      endif # PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS
+    endif # ENABLE_FULL_DEBUG_SYMBOLS
+  endif # PLATFORM-!macosx
 endif # PLATFORM
 
 clean:: 
@@ -236,12 +285,16 @@
 	$(RM) $(OBJDIR)/$(PROGRAM).ico
 	$(RM) $(OBJDIR)/$(PROGRAM).lcf
 	$(RM) $(OBJDIR)/$(PROGRAM).map
+	$(RM) $(OBJDIR)/$(PROGRAM).pdb
 	$(RM) $(OBJDIR)/$(PROGRAM).exp
 	$(RM) $(OBJDIR)/$(PROGRAM).lib
 	$(RM) $(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX)
 	$(RM) $(OBJDIR)/$(PROGRAM).ilk
 	$(RM) *.pdb
+else
+	$(RM) $(OBJDIR)/$(PROGRAM).debuginfo
 endif
+	$(RM) $(OBJDIR)/$(PROGRAM).diz
 
 
 clobber:: 
--- a/make/common/Release.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/Release.gmk	Tue May 08 07:34:53 2012 -0700
@@ -144,6 +144,7 @@
 	javadoc.1          \
 	javah.1            \
 	javap.1            \
+	jcmd.1             \
 	jconsole.1         \
 	jdb.1              \
 	jhat.1             \
@@ -607,10 +608,6 @@
 	$(ECHO) "oracle/jrockit/jfr/parser/" >> $@
 	$(ECHO) "oracle/jrockit/jfr/settings/" >> $@
 	$(ECHO) "oracle/jrockit/jfr/tools/" >> $@
-	$(ECHO) "oracle/jrockit/jfr/util/" >> $@
-	$(ECHO) "oracle/jrockit/jfr/util/log/" >> $@
-	$(ECHO) "oracle/jrockit/jfr/util/os/" >> $@
-	$(ECHO) "oracle/jrockit/jfr/util/text/" >> $@
 endif
 endif
 
@@ -637,7 +634,7 @@
 	$(MV) $@.temp $@
 	@($(CD) $(CLASSBINDIR) && $(java-vm-cleanup))
 
-# Create the jfr.jar containing Java Flight Recorder implementation
+# Create jfr.jar
 JFR_JAR=
 ifndef OPENJDK
 ifndef JAVASE_EMBEDDED
@@ -876,7 +873,9 @@
 	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" > $@
 else
 	$(FIND) $(JRE_IMAGE_DIR)/lib -type f -name \*.$(LIB_SUFFIX) >> $@
-	$(FILE) `$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+# The FILE command reports .debuginfo files as "ELF", but we don't want
+# those files in the JRE_BIN_LIST file. EXE_SUFFIX is empty on non-Windows.
+	$(FILE) `$(FIND) $(JRE_IMAGE_DIR)/bin -type f ! -name '*.debuginfo' -name \*$(EXE_SUFFIX)` \
 	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
 endif
 
@@ -1143,9 +1142,11 @@
 else
 	$(RM) $@
 	$(FIND) $(JDK_IMAGE_DIR)/jre/lib -type f -name \*.$(LIB_SUFFIX) >> $@
-	$(FILE) `$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*$(EXE_SUFFIX)` \
+# The FILE command reports .debuginfo files as "ELF", but we don't want
+# those files in the JDK_BIN_LIST file. EXE_SUFFIX is empty on non-Windows.
+	$(FILE) `$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f ! -name '*.debuginfo' -name \*$(EXE_SUFFIX)` \
 	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
-	file `$(FIND) $(JDK_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+	file `$(FIND) $(JDK_IMAGE_DIR)/bin -type f ! -name '*.debuginfo' -name \*$(EXE_SUFFIX)` \
 	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
 endif
 
--- a/make/common/internal/Resources.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/internal/Resources.gmk	Tue May 08 07:34:53 2012 -0700
@@ -153,8 +153,8 @@
 # Strip the properties files
 strip_all_props: $(STRIPPROPERTIES_JARFILE) $(STRIP_PROP_options)
 	@if [ -s $(STRIP_PROP_options) ] ; then \
-          $(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options)" ; \
-          $(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options) ; \
+          $(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options)" ; \
+          $(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options) ; \
         fi
 	@$(java-vm-cleanup)
 
@@ -243,8 +243,8 @@
 compile_all_props: $(COMPILEPROPERTIES_JARFILE) $(COMPILE_PROP_options)
 	@if [ `$(CAT) $(COMPILE_PROP_options) | $(WC) -l` -ge 1 ] ; then \
 	  $(MKDIR) -p $(GENSRCDIR); \
-	  $(ECHO) "$(BOOT_JAVA_CMD) -jar $(COMPILEPROPERTIES_JARFILE) -optionsfile $(COMPILE_PROP_options)";\
-	  $(BOOT_JAVA_CMD) -jar $(COMPILEPROPERTIES_JARFILE) -optionsfile $(COMPILE_PROP_options) ; \
+	  $(ECHO) "$(BOOT_JAVA_CMD) -jar $(COMPILEPROPERTIES_JARFILE) @$(COMPILE_PROP_options)";\
+	  $(BOOT_JAVA_CMD) -jar $(COMPILEPROPERTIES_JARFILE) @$(COMPILE_PROP_options) ; \
 	  $(java-vm-cleanup); \
 	fi
 
--- a/make/common/shared/Sanity.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/common/shared/Sanity.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. 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
@@ -1037,11 +1037,22 @@
 	    "      and/or check your value of ALT_HOTSPOT_LIB_PATH. \n" \
 	    "" >> $(ERROR_FILE) ; \
 	fi
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 	@#
 	@# Check for the .map files - its OK if they are not there..
 	@#
-  ifeq ($(ARCH_DATA_MODEL), 32)
+    ifeq ($(ARCH_DATA_MODEL), 32)
 	@# There is no 64-bit HotSpot client VM
+      ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	@if [ ! -r $(HOTSPOT_CLIENT_PATH)/jvm.diz ]; then \
+	  $(ECHO) "WARNING: HOTSPOT_CLIENT_PATH does not point to valid HotSpot .diz files. \n" \
+	    "        These files are optional and aid in the debugging of the JVM. \n" \
+	    "        Please check your access to \n" \
+	    "          $(HOTSPOT_CLIENT_PATH)/jvm.diz \n" \
+	    "        and/or check your value of ALT_HOTSPOT_CLIENT_PATH. \n" \
+	    "" >> $(WARNING_FILE) ; \
+	fi
+      else
 	@if [ ! -r $(HOTSPOT_CLIENT_PATH)/jvm.map ]; then \
 	  $(ECHO) "WARNING: HOTSPOT_CLIENT_PATH does not point to valid HotSpot .map files. \n" \
 	    "        These files are optional and aid in the debugging of the JVM. \n" \
@@ -1058,7 +1069,18 @@
 	    "        and/or check your value of ALT_HOTSPOT_CLIENT_PATH. \n" \
 	    "" >> $(WARNING_FILE) ; \
 	fi
-  endif
+      endif
+    endif
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+	@if [ ! -r $(HOTSPOT_SERVER_PATH)/jvm.diz ]; then \
+	  $(ECHO) "WARNING: HOTSPOT_SERVER_PATH does not point to valid HotSpot .diz files. \n" \
+	    "        These files are optional and aid in the debugging of the JVM. \n" \
+	    "        Please check your access to \n" \
+	    "          $(HOTSPOT_SERVER_PATH)/jvm.diz \n" \
+	    "        and/or check your value of ALT_HOTSPOT_SERVER_PATH. \n" \
+	    "" >> $(WARNING_FILE) ; \
+	fi
+    else
 	@if [ ! -r $(HOTSPOT_SERVER_PATH)/jvm.map ]; then \
 	  $(ECHO) "WARNING: HOTSPOT_SERVER_PATH does not point to valid HotSpot .map files. \n" \
 	    "        These files are optional and aid in the debugging of the JVM. \n" \
@@ -1075,6 +1097,8 @@
 	    "        and/or check your value of ALT_HOTSPOT_SERVER_PATH. \n" \
 	    "" >> $(WARNING_FILE) ; \
 	fi
+    endif
+  endif	
 endif	
 
 
--- a/make/java/awt/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/awt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -57,7 +57,7 @@
 
 properties: $(LIBDIR) $(LIBPROPS)
 
-$(LIBDIR)/%.properties: $(PLATFORM_SRC)/lib/%.properties
+$(LIBDIR)/%.properties: $(PLATFORM_PROPERTIES)/%.properties
 	$(install-file)
 
 properties.clean :
--- a/make/java/instrument/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/instrument/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -26,6 +26,8 @@
 # Makefile for building the Java Programming Language Instrumentation Services
 # agent, supporting java.lang.instrument
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 PACKAGE = sun.instrument
 LIBRARY = instrument
--- a/make/java/java/FILES_java.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/java/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -51,6 +51,7 @@
     java/lang/SuppressWarnings.java \
     java/lang/AbstractStringBuilder.java \
     java/lang/ClassLoader.java \
+    java/lang/ClassLoaderHelper.java \
     java/lang/AssertionStatusDirectives.java \
     java/lang/Enum.java \
     java/lang/StrictMath.java \
--- a/make/java/java/reflect/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/java/reflect/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -36,7 +36,7 @@
 #
 # Files to compile.
 #
-AUTO_FILES_JAVA_DIRS = java/lang/reflect sun/reflect
+AUTO_FILES_JAVA_DIRS = java/lang/reflect sun/reflect java/lang/annotation
 
 #
 # Install .lib file.
--- a/make/java/java_crw_demo/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/java_crw_demo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 
 LIBRARY = java_crw_demo
--- a/make/java/java_hprof_demo/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/java_hprof_demo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 LIBRARY = hprof
 PRODUCT = sun
--- a/make/java/main/java/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/main/java/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1996, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PROGRAM = java
 PRODUCT = java
--- a/make/java/management/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/management/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 PACKAGE = java.lang.management
 LIBRARY = management
--- a/make/java/npt/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/npt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 
 # It's currently used by jpda and hprof.  Put it in base module for now.
@@ -68,7 +70,7 @@
 endif
 
 # Add location of iconv header
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
   OTHER_LDLIBS += -liconv
 endif
 
--- a/make/java/redist/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/redist/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2012, Oracle and/or its affiliates. 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
@@ -61,9 +61,13 @@
 JVMDTRACE_NAME         = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).$(LIBRARY_SUFFIX)
 
 JVM_DEBUGINFO_NAME       = $(LIB_PREFIX)jvm.debuginfo
+JVM_DIZ_NAME             = $(LIB_PREFIX)jvm.diz
 LIBJSIG_DEBUGINFO_NAME   = $(LIB_PREFIX)jsig.debuginfo
+LIBJSIG_DIZ_NAME         = $(LIB_PREFIX)jsig.diz
 JVMDB_DEBUGINFO_NAME     = $(LIB_PREFIX)jvm$(DB_SUFFIX).debuginfo
+JVMDB_DIZ_NAME           = $(LIB_PREFIX)jvm$(DB_SUFFIX).diz
 JVMDTRACE_DEBUGINFO_NAME = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).debuginfo
+JVMDTRACE_DIZ_NAME       = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).diz
 
 CLASSSHARINGDATA_DIR   = $(BUILDDIR)/tools/sharing
 
@@ -86,10 +90,17 @@
 ifndef BUILD_CLIENT_ONLY
   IMPORT_LIST = $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME) \
                 $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt
-  ifneq ($(OBJCOPY),)
-    # the import JDK may not contain .debuginfo files
-    ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)),)
-      IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DIZ_NAME)
+      endif
+    else
+      # the import JDK may not contain .debuginfo files
+      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME)
+      endif
     endif
   endif
 else
@@ -101,10 +112,17 @@
 ifeq ($(ARCH_DATA_MODEL), 32)
   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \
                  $(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt
-  ifneq ($(OBJCOPY),)
-    # the import JDK may not contain .debuginfo files
-    ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)),)
-      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DIZ_NAME)
+      endif
+    else
+      # the import JDK may not contain .debuginfo files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME)
+      endif
     endif
   endif
 endif
@@ -121,20 +139,56 @@
 
 # Get the hotspot .map and .pdb files for client and server
 ifndef BUILD_CLIENT_ONLY
-IMPORT_LIST += \
-	$(LIBDIR)/$(JVMLIB_NAME) \
-	$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
-	$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME)
+  IMPORT_LIST += $(LIBDIR)/$(JVMLIB_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DIZ_NAME)
+      endif
+    else
+      # the import JDK may not contain .pdb files
+      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMPDB_NAME)),)
+        # assume .map file is present if .pdb file is preset
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
+	  $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME)
+      endif
+    endif
+  endif
 endif
 
 # Add .map and .pdb files to the import path for client and kernel VMs. 
 # These are only available on 32-bit windows builds. 
 ifeq ($(ARCH_DATA_MODEL), 32)
-  IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
-                 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME)
-  ifeq ($(DO_KERNEL), true)
-    IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME) \
-                   $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DIZ_NAME)
+      endif
+    else
+      # the import JDK may not contain .pdb files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMPDB_NAME)),)
+        # assume .map file is present if .pdb file is preset
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
+                       $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME)
+      endif
+    endif
+    ifeq ($(DO_KERNEL), true)
+      ifeq ($(ZIP_DEBUGINFO_FILES),1)
+        # the import JDK may not contain .diz files
+        ifneq ($(wildcard $(HOTSPOT_KERNEL_PATH)/$(JVM_DIZ_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_DIZ_NAME)
+        endif
+      else
+        # the import JDK may not contain .pdb files
+        ifneq ($(wildcard $(HOTSPOT_KERNEL_PATH)/$(JVMPDB_NAME)),)
+          # assume .map file is present if .pdb file is preset
+          IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME) \
+                         $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME)
+        endif
+      endif
+    endif
   endif
 endif
 
@@ -165,10 +219,22 @@
 	@$(prep-target)
 	-$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVMPDB_NAME)  $@
 
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DIZ_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_CLIENT_PATH)/$(JVM_DIZ_NAME)  $@
+
+$(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_DIZ_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVM_DIZ_NAME)  $@
+
 ifndef BUILD_CLIENT_ONLY
 $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME): 
 	@$(prep-target)
 	-$(CP) $(HOTSPOT_SERVER_PATH)/$(JVMPDB_NAME) $@
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DIZ_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_SERVER_PATH)/$(JVM_DIZ_NAME) $@
 endif
 
 #  Windows     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  Windows
@@ -176,18 +242,33 @@
 #  NOT Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv  NOT Windows
 
 IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_NAME) 
-ifneq ($(OBJCOPY),)
-  # the import JDK may not contain .debuginfo files
-  ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
-    IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+    # the import JDK may not contain .diz files
+    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DIZ_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_DIZ_NAME)
+    endif
+  else
+    # the import JDK may not contain .debuginfo files
+    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+    endif
   endif
 endif
 ifndef BUILD_CLIENT_ONLY
   IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME)
-  ifneq ($(OBJCOPY),)
-    # the import JDK may not contain the target of the symlink
-    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
-      IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain the target of the symlink
+      ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DIZ_NAME)),)
+        # check for the .diz file, but create the .debuginfo link
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+      endif
+    else
+      # the import JDK may not contain the target of the symlink
+      ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+      endif
     endif
   endif
 endif
@@ -195,19 +276,33 @@
 ifeq ($(PLATFORM), solaris)
   ifndef BUILD_CLIENT_ONLY
     IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME)
-    ifneq ($(OBJCOPY),)
-      # the import JDK may not contain .debuginfo files
-      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)),)
-        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME)
+    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+      ifeq ($(ZIP_DEBUGINFO_FILES),1)
+        # the import JDK may not contain .diz files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDB_DIZ_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DIZ_NAME)
+        endif
+      else
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME)
+        endif
       endif
     endif
     # The conditional can be removed when import JDKs contain these files.
     ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)),)
       IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME)
-      ifneq ($(OBJCOPY),)
-        # the import JDK may not contain .debuginfo files
-        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
-          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
+      ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+        ifeq ($(ZIP_DEBUGINFO_FILES),1)
+          # the import JDK may not contain .diz files
+          ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DIZ_NAME)),)
+            IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DIZ_NAME)
+          endif
+        else
+          # the import JDK may not contain .debuginfo files
+          ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
+            IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
+          endif
         endif
       endif
     else
@@ -220,10 +315,18 @@
 ifeq ($(ARCH_DATA_MODEL), 32)
 
 IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
-ifneq ($(OBJCOPY),)
-  # the import JDK may not contain the target of the symlink
-  ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
-    IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+    # the import JDK may not contain the target of the symlink
+    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DIZ_NAME)),)
+      # check for the .diz file, but create the .debuginfo link
+      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+    endif
+  else
+    # the import JDK may not contain the target of the symlink
+    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+    endif
   endif
 endif
 
@@ -231,10 +334,17 @@
 #  solaris   vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv  solaris
 
 IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME)
-ifneq ($(OBJCOPY),)
-  # the import JDK may not contain .debuginfo files
-  ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME)),)
-    IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+    # the import JDK may not contain .diz files
+    ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DIZ_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DIZ_NAME)
+    endif
+  else
+    # the import JDK may not contain .debuginfo files
+    ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME)
+    endif
   endif
 endif
 
@@ -243,13 +353,22 @@
   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME)
   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME)
   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME)
-  ifneq ($(OBJCOPY),)
-    # the import JDK may not contain .debuginfo files
-    ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
-      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
-      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
-      IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
-  endif
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DIZ_NAME)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DIZ_NAME)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DIZ_NAME)
+      endif
+    else
+      # the import JDK may not contain .debuginfo files
+      ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+      endif
+    endif
   endif
 else
   $(warning WARNING: $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME) not found!)
@@ -259,10 +378,17 @@
   # The conditional can be removed when import JDKs contain these files.
   ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)),)
     IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME)
-    ifneq ($(OBJCOPY),)
-      # the import JDK may not contain .debuginfo files
-      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)),)
-        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
+    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+      ifeq ($(ZIP_DEBUGINFO_FILES),1)
+        # the import JDK may not contain .diz files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DIZ_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DIZ_NAME)
+        endif
+      else
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
+        endif
       endif
     endif
   else
@@ -272,10 +398,17 @@
   # The conditional can be removed when import JDKs contain these files.
   ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)),)
     IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME)
-    ifneq ($(OBJCOPY),)
-      # the import JDK may not contain .debuginfo files
-      ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)),)
-        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+    ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+      ifeq ($(ZIP_DEBUGINFO_FILES),1)
+        # the import JDK may not contain .diz files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DIZ_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DIZ_NAME)
+        endif
+      else
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+        endif
       endif
     endif
   else
@@ -304,9 +437,14 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DIZ_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_DIZ_NAME)
+	$(install-import-file)
+  else
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)
 	$(install-import-file)
+  endif
 endif
 
 $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_NAME): $(HOTSPOT_KERNEL_PATH)/$(JVM_NAME)
@@ -317,9 +455,14 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(LIBJSIG_DIZ_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DIZ_NAME)
+	$(install-import-file)
+  else
 $(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)
 	$(install-import-file)
+  endif
 endif
 
 ifndef BUILD_CLIENT_ONLY
@@ -328,22 +471,24 @@
 	@$(prep-target)
 	$(call install-sym-link, ../$(LIBJSIG_NAME))
 
-ifneq ($(OBJCOPY),)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+# we don't create a symlink to a libjsig.diz file
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) \
 $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME):
 	@$(prep-target)
 	$(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME))
-endif
+  endif
 else
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME):
 	@$(prep-target)
 	$(call install-sym-link, ../$(LIBJSIG_NAME))
 
-ifneq ($(OBJCOPY),)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+# we don't create a symlink to a libjsig.diz file
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME):
 	@$(prep-target)
 	$(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME))
-endif
+  endif
 endif
 
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_NAME)
@@ -354,12 +499,20 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DIZ_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DIZ_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DIZ_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_DIZ_NAME)
+	$(install-import-file)
+  else
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME)
 	$(install-import-file)
 
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_DEBUGINFO_NAME)
 	$(install-import-file)
+  endif
 endif
 
 ifndef BUILD_CLIENT_ONLY
@@ -371,13 +524,21 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DIZ_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_DIZ_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DIZ_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DIZ_NAME)
+	$(install-import-file)
+    else
 $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)
 	$(install-import-file)
 
 $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)
 	$(install-import-file)
-endif
+    endif
+  endif
 endif
 
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)
@@ -388,12 +549,20 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DIZ_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DIZ_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DIZ_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_DIZ_NAME)
+	$(install-import-file)
+  else
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)
 	$(install-import-file)
 
 $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)
 	$(install-import-file)
+  endif
 endif
 
 ifndef BUILD_CLIENT_ONLY
@@ -409,7 +578,17 @@
 	$(install-import-file)
 	@$(call binary_file_verification,$@)
 
-ifneq ($(OBJCOPY),)
+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+  ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DIZ_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DIZ_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DIZ_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DIZ_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DIZ_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_DIZ_NAME)
+	$(install-import-file)
+  else
 $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)
 	$(install-import-file)
 
@@ -418,6 +597,7 @@
 
 $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)
 	$(install-import-file)
+  endif
 endif
 
 $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt : $(HOTSPOT_SERVER_PATH)/Xusage.txt
--- a/make/java/redist/sajdi/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/redist/sajdi/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2012, Oracle and/or its affiliates. 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
@@ -54,14 +54,26 @@
 ifeq ($(INCLUDE_SA), true)
   IMPORT_LIST += $(LIBDIR)/sa-jdi.jar \
                  $(LIB_LOCATION)/$(SALIB_NAME)
-  ifeq ($(PLATFORM), windows)
-    IMPORT_LIST += $(LIB_LOCATION)/$(SAMAP_NAME) \
-                   $(LIB_LOCATION)/$(SAPDB_NAME)
-  endif
-  ifneq ($(OBJCOPY),)
-    # the import JDK may not contain .debuginfo files
-    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SA_DEBUGINFO_NAME)),)
-      IMPORT_LIST += $(LIB_LOCATION)/$(SA_DEBUGINFO_NAME)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+      # the import JDK may not contain .diz files
+      ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SA_DIZ_NAME)),)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SA_DIZ_NAME)
+      endif
+    else
+      ifeq ($(PLATFORM), windows)
+        # the import JDK may not contain .pdb files
+        ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SAPDB_NAME)),)
+          # assume .map file is present if .pdb is present
+          IMPORT_LIST += $(LIB_LOCATION)/$(SAMAP_NAME) \
+                         $(LIB_LOCATION)/$(SAPDB_NAME)
+        endif
+      else
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SA_DEBUGINFO_NAME)),)
+          IMPORT_LIST += $(LIB_LOCATION)/$(SA_DEBUGINFO_NAME)
+        endif
+      endif
     endif
   endif
 endif # INCLUDE_SA
@@ -80,17 +92,22 @@
 $(LIB_LOCATION)/$(SALIB_NAME): $(HOTSPOT_SALIB_PATH)/$(SALIB_NAME)
 	$(install-import-file)
 
-ifeq ($(PLATFORM), windows)
+  ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
+    ifeq ($(ZIP_DEBUGINFO_FILES),1)
+$(LIB_LOCATION)/$(SA_DIZ_NAME): $(HOTSPOT_SALIB_PATH)/$(SA_DIZ_NAME)
+	$(install-import-file)
+    else
+      ifeq ($(PLATFORM), windows)
 $(LIB_LOCATION)/$(SAPDB_NAME): $(HOTSPOT_SALIB_PATH)/$(SAPDB_NAME)
 	$(install-import-file)
 
 $(LIB_LOCATION)/$(SAMAP_NAME): $(HOTSPOT_SALIB_PATH)/$(SAMAP_NAME)
 	$(install-import-file)
-endif # windows
-
-  ifneq ($(OBJCOPY),)
+      else
 $(LIB_LOCATION)/$(SA_DEBUGINFO_NAME): $(HOTSPOT_SALIB_PATH)/$(SA_DEBUGINFO_NAME)
 	$(install-import-file)
+      endif
+    endif
   endif
 endif # INCLUDE_SA
 
--- a/make/java/verify/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/java/verify/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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
@@ -27,6 +27,8 @@
 # Build libverify.so
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 PRODUCT = java
 LIBRARY = verify
--- a/make/jpda/jdwp/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/jpda/jdwp/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -27,6 +27,8 @@
 # Makefile for building JDWP
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../..
 PACKAGE = com.sun.tools.jdwp
 PRODUCT = jpda
--- a/make/jpda/transport/socket/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/jpda/transport/socket/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2012, Oracle and/or its affiliates. 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
@@ -27,6 +27,8 @@
 # Makefile for building the JDI back-end implementation
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 LIBRARY = dt_socket
 PRODUCT = jbug
@@ -40,7 +42,7 @@
   OTHER_LDLIBS += $(LIBNSL) $(LIBSOCKET) -lpthread
 endif
 
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
   LIBSOCKET =
   OTHER_LDLIBS += -pthread
 endif
--- a/make/jprt.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/jprt.gmk	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2012, Oracle and/or its affiliates. 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
@@ -27,17 +27,24 @@
 
 JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip
 
+ifeq ($(PLATFORM),windows)
+  ZIPFLAGS=-q
+else
+  # store symbolic links as the link
+  ZIPFLAGS=-q -y
+endif
+
 jprt_build_product:  all images
 	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
-	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+	  $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
 
 jprt_build_fastdebug: fastdebug images
 	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
-	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+	  $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
 
 jprt_build_debug: debug images 
 	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
-	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+	  $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
 
 #
 # Phonies to avoid accidents.
--- a/make/launchers/Makefile.launcher	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/launchers/Makefile.launcher	Tue May 08 07:34:53 2012 -0700
@@ -27,6 +27,8 @@
 # Makefile for building simple launchers
 #
 
+PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ..
 PACKAGE = launcher
 PRODUCT = sun
@@ -155,8 +157,10 @@
 # GUI tools
 ifeq ($(GUI_TOOL),true)
   ifneq ($(PLATFORM), windows)
-    # Anything with a GUI needs X11 to be linked in.
-    OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11
+    ifneq ($(PLATFORM), macosx)
+      # Anything with a GUI needs X11 to be linked in.
+      OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11
+    endif
   endif
 endif
 
--- a/make/mkdemo/jvmti/compiledMethodLoad/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/compiledMethodLoad/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = compiledMethodLoad
--- a/make/mkdemo/jvmti/gctest/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/gctest/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = gctest
--- a/make/mkdemo/jvmti/heapTracker/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/heapTracker/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = heapTracker
--- a/make/mkdemo/jvmti/heapViewer/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/heapViewer/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = heapViewer
--- a/make/mkdemo/jvmti/hprof/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/hprof/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = hprof
--- a/make/mkdemo/jvmti/minst/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/minst/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = minst
--- a/make/mkdemo/jvmti/mtrace/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/mtrace/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = mtrace
--- a/make/mkdemo/jvmti/versionCheck/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/versionCheck/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = versionCheck
--- a/make/mkdemo/jvmti/waiters/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/mkdemo/jvmti/waiters/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2012, Oracle and/or its affiliates. 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
@@ -23,6 +23,8 @@
 # questions.
 #
 
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PRODUCT = demo/jvmti
 DEMONAME = waiters
--- a/make/sun/awt/mawt.gmk	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/awt/mawt.gmk	Tue May 08 07:34:53 2012 -0700
@@ -208,7 +208,7 @@
                         $(wildcard /usr/include/X11/extensions))
 endif
 
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
   CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \
               -I$(OPENWIN_HOME)/include 
 endif
--- a/make/sun/font/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/font/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -62,7 +62,7 @@
     java/text/Bidi.java \
     sun/font/FileFont.java \
     sun/font/FileFontStrike.java \
-    sun/font/FontManager.java \
+    sun/font/SunFontManager.java \
     sun/font/GlyphList.java \
     sun/font/NativeFont.java \
     sun/font/StrikeCache.java \
@@ -172,7 +172,7 @@
 # Libraries to link, and other C flags.
 #
 
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
 OTHER_INCLUDES += -I$(X11_PATH)/include
 OTHER_LDLIBS  += -lawt $(LIBM) $(LIBCXX)
  ifeq ($(OS_VENDOR),Apple)
@@ -197,7 +197,7 @@
 
 # set up compile flags..
 
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
 CPPFLAGS += -I$(CLASSHDRDIR)
 endif
 
--- a/make/sun/font/t2k/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/font/t2k/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -52,7 +52,6 @@
 FILES_export = \
     java/awt/Font.java \
     sun/font/FileFont.java \
-    sun/font/FontManager.java \
     sun/font/GlyphList.java \
     sun/font/NativeFont.java \
     sun/font/StrikeCache.java \
--- a/make/sun/javazic/tzdata/VERSION	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/VERSION	Tue May 08 07:34:53 2012 -0700
@@ -21,4 +21,4 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
-tzdata2011l
+tzdata2012c
--- a/make/sun/javazic/tzdata/africa	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/africa	Tue May 08 07:34:53 2012 -0700
@@ -790,6 +790,37 @@
 # wall clock time (i.e. 11pm UTC), but that's what I would assume. It has
 # also been like that in the past.
 
+# From Alexander Krivenyshev (2012-03-09):
+# According to Infom&eacute;diaire web site from Morocco (infomediaire.ma),
+# on March 9, 2012, (in French) Heure l&eacute;gale:
+# Le Maroc adopte officiellement l'heure d'&eacute;t&eacute;
+# <a href="http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9">
+# http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9
+# </a>
+# Governing Council adopted draft decree, that Morocco DST starts on
+# the last Sunday of March (March 25, 2012) and ends on
+# last Sunday of September (September 30, 2012)
+# except the month of Ramadan.
+# or (brief)
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco06.html">
+# http://www.worldtimezone.com/dst_news/dst_news_morocco06.html
+# </a>
+
+# From Arthur David Olson (2012-03-10):
+# The infomediaire.ma source indicates that the system is to be in
+# effect every year. It gives 03H00 as the "fall back" time of day;
+# it lacks a "spring forward" time of day; assume 2:00 XXX.
+# Wait on specifying the Ramadan exception for details about
+# start date, start time of day, end date, and end time of day XXX.
+
+# From Christophe Tropamer (2012-03-16):
+# Seen Morocco change again:
+# <a href="http://www.le2uminutes.com/actualite.php">
+# http://www.le2uminutes.com/actualite.php
+# </a>
+# "...&agrave; partir du dernier dimance d'avril et non fins mars,
+# comme annonc&eacute; pr&eacute;c&eacute;demment."
+
 # RULE	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 
 Rule	Morocco	1939	only	-	Sep	12	 0:00	1:00	S
@@ -815,6 +846,9 @@
 Rule	Morocco	2010	only	-	Aug	 8	 0:00	0	-
 Rule	Morocco	2011	only	-	Apr	 3	 0:00	1:00	S
 Rule	Morocco	2011	only	-	Jul	 31	 0	0	-
+Rule	Morocco	2012	max	-	Apr	 lastSun 2:00	1:00	S
+Rule	Morocco	2012	max	-	Sep	 lastSun 3:00	0	-
+
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone Africa/Casablanca	-0:30:20 -	LMT	1913 Oct 26
 			 0:00	Morocco	WE%sT	1984 Mar 16
--- a/make/sun/javazic/tzdata/antarctica	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/antarctica	Tue May 08 07:34:53 2012 -0700
@@ -64,8 +64,19 @@
 Rule	ChileAQ	1998	only	-	Mar	Sun>=9	3:00u	0	-
 Rule	ChileAQ	1998	only	-	Sep	27	4:00u	1:00	S
 Rule	ChileAQ	1999	only	-	Apr	 4	3:00u	0	-
-Rule	ChileAQ	1999	max	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	2000	max	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	1999	2010	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	ChileAQ	2000	2007	-	Mar	Sun>=9	3:00u	0	-
+# N.B.: the end of March 29 in Chile is March 30 in Universal time,
+# which is used below in specifying the transition.
+Rule	ChileAQ	2008	only	-	Mar	30	3:00u	0	-
+Rule	ChileAQ	2009	only	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	2010	only	-	Apr	Sun>=1	3:00u	0	-
+Rule	ChileAQ	2011	only	-	May	Sun>=2	3:00u	0	-
+Rule	ChileAQ	2011	only	-	Aug	Sun>=16	4:00u	1:00	S
+Rule	ChileAQ	2012	only	-	Apr	Sun>=23	3:00u	0	-
+Rule	ChileAQ	2012	only	-	Sep	Sun>=2	4:00u	1:00	S
+Rule	ChileAQ	2013	max	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	2013	max	-	Oct	Sun>=9	4:00u	1:00	S
 
 # These rules are stolen from the `australasia' file.
 Rule	AusAQ	1917	only	-	Jan	 1	0:01	1:00	-
@@ -164,12 +175,16 @@
 						# Western (Aus) Standard Time
 			11:00	-	CAST	2010 Mar 5 2:00
 						# Casey Time
+			8:00	-	WST	2011 Oct 28 2:00
+			11:00	-	CAST	2012 Feb 21 17:00u
 			8:00	-	WST
 Zone Antarctica/Davis	0	-	zzz	1957 Jan 13
 			7:00	-	DAVT	1964 Nov # Davis Time
 			0	-	zzz	1969 Feb
 			7:00	-	DAVT	2009 Oct 18 2:00
 			5:00	-	DAVT	2010 Mar 10 20:00u
+			7:00	-	DAVT	2011 Oct 28 2:00
+			5:00	-	DAVT	2012 Feb 21 20:00u
 			7:00	-	DAVT
 Zone Antarctica/Mawson	0	-	zzz	1954 Feb 13
 			6:00	-	MAWT	2009 Oct 18 2:00
--- a/make/sun/javazic/tzdata/asia	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/asia	Tue May 08 07:34:53 2012 -0700
@@ -21,6 +21,7 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
+# <pre>
 # This file is in the public domain, so clarified as of
 # 2009-05-17 by Arthur David Olson.
 
@@ -99,10 +100,6 @@
 Rule RussiaAsia	1993	1995	-	Sep	lastSun	 2:00s	0	-
 Rule RussiaAsia	1996	max	-	Oct	lastSun	 2:00s	0	-
 
-# From Arthur David Olson (2011-06-15):
-# While Russia abandoned DST in 2011, Armenia may choose to
-# follow Russia's "old" rules.
-
 # Afghanistan
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Asia/Kabul	4:36:48 -	LMT	1890
@@ -119,6 +116,21 @@
 # in 1996, though it did use DST in 1995.  IATA SSIM (1991/1998) reports that
 # Armenia switched from 3:00 to 4:00 in 1998 and observed DST after 1991,
 # but started switching at 3:00s in 1998.
+
+# From Arthur David Olson (2011-06-15):
+# While Russia abandoned DST in 2011, Armenia may choose to
+# follow Russia's "old" rules.
+
+# From Alexander Krivenyshev (2012-02-10):
+# According to News Armenia, on Feb 9, 2012,
+# http://newsarmenia.ru/society/20120209/42609695.html
+# 
+# The Armenia National Assembly adopted final reading of Amendments to the
+# Law "On procedure of calculation time on the territory of the Republic of
+# Armenia" according to which Armenia [is] abolishing Daylight Saving Time.
+# or
+# (brief)
+# http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Asia/Yerevan	2:58:00 -	LMT	1924 May  2
 			3:00	-	YERT	1957 Mar    # Yerevan Time
@@ -126,7 +138,8 @@
 			3:00	1:00	YERST	1991 Sep 23 # independence
 			3:00 RussiaAsia	AM%sT	1995 Sep 24 2:00s
 			4:00	-	AMT	1997
-			4:00 RussiaAsia	AM%sT
+			4:00 RussiaAsia	AM%sT	2012 Mar 25 2:00s
+			4:00	-	AMT
 
 # Azerbaijan
 # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
@@ -2257,6 +2270,29 @@
 # http://www.maannews.net/eng/ViewDetails.aspx?ID=424808
 # </a>
 
+# From Steffen Thorsen (2012-03-26):
+# Palestinian news sources tell that both Gaza and West Bank will start DST
+# on Friday (Thursday midnight, 2012-03-29 24:00).
+# Some of many sources in Arabic:
+# <a href="http://www.samanews.com/index.php?act=Show&id=122638">
+# http://www.samanews.com/index.php?act=Show&id=122638
+# </a>
+#
+# <a href="http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html">
+# http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html
+# </a>
+#
+# Our brief summary:
+# <a href="http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html">
+# http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
+# </a>
+
+# From Arthur David Olson (2012-03-27):
+# The timeanddate article for 2012 says that "the end date has not yet been
+# announced" and that "Last year, both...paused daylight saving time during...
+# Ramadan. It is not yet known [for] 2012."
+# For now, assume both switch back on the last Friday in September. XXX
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule EgyptAsia	1957	only	-	May	10	0:00	1:00	S
 Rule EgyptAsia	1957	1958	-	Oct	 1	0:00	0	-
@@ -2289,6 +2325,8 @@
 			2:00	Jordan	EE%sT	1999
 			2:00 Palestine	EE%sT	2011 Apr  2 12:01
 			2:00	1:00	EEST	2011 Aug  1
+			2:00	-	EET	2012 Mar 30
+			2:00	1:00	EEST	2012 Sep 28
 			2:00	-	EET
 
 Zone	Asia/Hebron	2:20:23	-	LMT	1900 Oct
@@ -2302,6 +2340,8 @@
 			2:00	1:00	EEST	2011 Aug  1
 			2:00	-	EET	2011 Aug 30
 			2:00	1:00	EEST	2011 Sep 30 3:00
+			2:00	-	EET	2012 Mar 30
+			2:00	1:00	EEST	2012 Sep 28 3:00
 			2:00	-	EET
 
 # Paracel Is
@@ -2593,10 +2633,28 @@
 # http://sns.sy/sns/?path=news/read/11421 (Arabic)
 # </a>
 
+# From Steffen Thorsen (2012-03-26):
+# Today, Syria's government announced that they will start DST early on Friday
+# (00:00). This is a bit earlier than the past two years.
+#
+# From Syrian Arab News Agency, in Arabic:
+# <a href="http://www.sana.sy/ara/2/2012/03/26/408215.htm">
+# http://www.sana.sy/ara/2/2012/03/26/408215.htm
+# </a>
+#
+# Our brief summary:
+# <a href="http://www.timeanddate.com/news/time/syria-dst-2012.html">
+# http://www.timeanddate.com/news/time/syria-dst-2012.html
+# </a>
+
+# From Arthur David Olson (2012-03-27):
+# Assume last Friday in March going forward XXX.
+
 Rule	Syria	2008	only	-	Apr	Fri>=1	0:00	1:00	S
 Rule	Syria	2008	only	-	Nov	1	0:00	0	-
 Rule	Syria	2009	only	-	Mar	lastFri	0:00	1:00	S
-Rule	Syria	2010	max	-	Apr	Fri>=1	0:00	1:00	S
+Rule	Syria	2010	2011	-	Apr	Fri>=1	0:00	1:00	S
+Rule	Syria	2012	max	-	Mar	lastFri	0:00	1:00	S
 Rule	Syria	2009	max	-	Oct	lastFri	0:00	0	-
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
--- a/make/sun/javazic/tzdata/australasia	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/australasia	Tue May 08 07:34:53 2012 -0700
@@ -330,6 +330,20 @@
 # advance at 2am to 3am on October 23, 2011 and one hour back at 3am to 
 # 2am on February 26 next year.
 
+# From Ken Rylander (2011-10-24)
+# Another change to the Fiji DST end date. In the TZ database the end date for
+# Fiji DST 2012, is currently Feb 26. This has been changed to Jan 22.
+#
+# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155">
+# http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155
+# </a>
+# states:
+#
+# The end of daylight saving scheduled initially for the 26th of February 2012
+# has been brought forward to the 22nd of January 2012.
+# The commencement of daylight saving will remain unchanged and start
+# on the  23rd of October, 2011.
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Fiji	1998	1999	-	Nov	Sun>=1	2:00	1:00	S
 Rule	Fiji	1999	2000	-	Feb	lastSun	3:00	0	-
@@ -338,7 +352,7 @@
 Rule	Fiji	2010	only	-	Oct	24	2:00	1:00	S
 Rule	Fiji	2011	only	-	Mar	Sun>=1	3:00	0	-
 Rule	Fiji	2011	only	-	Oct	23	2:00	1:00	S
-Rule	Fiji	2012	only	-	Feb	26	3:00	0	-
+Rule	Fiji	2012	only	-	Jan	22	3:00	0	-
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Pacific/Fiji	11:53:40 -	LMT	1915 Oct 26	# Suva
 			12:00	Fiji	FJ%sT	# Fiji Time
@@ -624,6 +638,11 @@
 # Dateline Change skip Friday 30th Dec 2011
 # Thursday 29th December 2011	23:59:59 Hours
 # Saturday 31st December 2011	00:00:00 Hours
+#
+# Clarification by Tim Parenti (2012-01-03):
+# Although Samoa has used Daylight Saving Time in the 2010-2011 and 2011-2012
+# seasons, there is not yet any indication that this trend will continue on
+# a regular basis. For now, we have explicitly listed the transitions below.
 Zone Pacific/Apia	 12:33:04 -	LMT	1879 Jul  5
 			-11:26:56 -	LMT	1911
 			-11:30	-	SAMT	1950		# Samoa Time
@@ -641,9 +660,28 @@
 			11:00	-	SBT	# Solomon Is Time
 
 # Tokelau Is
+#
+# From Gwillim Law (2011-12-29)
+# A correspondent informed me that Tokelau, like Samoa, will be skipping
+# December 31 this year, thereby changing its time zone from UTC-10 to
+# UTC+14. When I tried to verify this statement, I found a confirming
+# article in Time magazine online
+# <a href="http://www.time.com/time/world/article/0,8599,2103243,00.html">
+# (http://www.time.com/time/world/article/0,8599,2103243,00.html).
+# </a>
+#
+# From Jonathan Leffler (2011-12-29)
+# Information from the BBC to the same effect:
+# <a href="http://www.bbc.co.uk/news/world-asia-16351377">
+# http://www.bbc.co.uk/news/world-asia-16351377
+# </a>
+#
+# Patch supplied by Tim Parenti (2011-12-29)
+
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Pacific/Fakaofo	-11:24:56 -	LMT	1901
-			-10:00	-	TKT	# Tokelau Time
+			-10:00	-	TKT 2011 Dec 30	# Tokelau Time
+			14:00	-	TKT
 
 # Tonga
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
--- a/make/sun/javazic/tzdata/europe	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/europe	Tue May 08 07:34:53 2012 -0700
@@ -233,9 +233,15 @@
 # the history of summer time legislation in the United Kingdom.
 # Since 1998 Joseph S. Myers has been updating
 # and extending this list, which can be found in
-# <a href="http://student.cusu.cam.ac.uk/~jsm28/british-time/">
+# http://student.cusu.cam.ac.uk/~jsm28/british-time/
+# <a href="http://www.polyomino.org.uk/british-time/">
 # History of legal time in Britain
 # </a>
+# Rob Crowther (2012-01-04) reports that that URL no longer
+# exists, and the article can now be found at:
+# <a href="http://www.polyomino.org.uk/british-time/">
+# http://www.polyomino.org.uk/british-time/
+# </a>
 
 # From Joseph S. Myers (1998-01-06):
 #
@@ -1173,10 +1179,10 @@
 # write that they were used in Monaco and in many French locations.
 # Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
 # Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
-# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Decartes,
+# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Descartes,
 # Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
 # Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
-# Dole, Morez, St-Claude, and Collognes (Haute-Savioe).
+# Dole, Morez, St-Claude, and Collonges (Haute-Savoie).
 Rule	France	1941	only	-	May	 5	 0:00	2:00	M # Midsummer
 # Shanks & Pottenger say this transition occurred at Oct 6 1:00,
 # but go with Denis Excoffier (1997-12-12),
@@ -1677,6 +1683,41 @@
 # But [two people] separately reported via
 # Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
 # The Tiraspol entry has therefore been removed for now.
+#
+# From Alexander Krivenyshev (2011-10-17):
+# Pridnestrovian Moldavian Republic (PMR, also known as
+# "Pridnestrovie") has abolished seasonal clock change (no transition
+# to the Winter Time).
+#
+# News (in Russian):
+# <a href="http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html">
+# http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html
+# </a>
+#
+# <a href="http://www.allmoldova.com/moldova-news/1249064116.html">
+# http://www.allmoldova.com/moldova-news/1249064116.html
+# </a>
+#
+# The substance of this change (reinstatement of the Tiraspol entry)
+# is from a patch from Petr Machata (2011-10-17)
+#
+# From Tim Parenti (2011-10-19)
+# In addition, being situated at +4651+2938 would give Tiraspol
+# a pre-1880 LMT offset of 1:58:32.
+#
+# (which agrees with the earlier entry that had been removed)
+#
+# From Alexander Krivenyshev (2011-10-26)
+# NO need to divide Moldova into two timezones at this point.
+# As of today, Transnistria (Pridnestrovie)- Tiraspol reversed its own
+# decision to abolish DST this winter. 
+# Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
+# Tiraspol will go back to winter time on October 30, 2011.
+# News from Moldova (in russian):
+# <a href="http://ru.publika.md/link_317061.html">
+# http://ru.publika.md/link_317061.html
+# </a>
+
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Europe/Chisinau	1:55:20 -	LMT	1880
@@ -2673,6 +2714,28 @@
 # <a href="http://www.pravda.com.ua/rus/news/2011/09/20/6600616/">
 # http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
 # </a>
+#
+# From Philip Pizzey (2011-10-18):
+# Today my Ukrainian colleagues have informed me that the
+# Ukrainian parliament have decided that they will go to winter
+# time this year after all.
+#
+# From Udo Schwedt (2011-10-18):
+# As far as I understand, the recent change to the Ukranian time zone 
+# (Europe/Kiev) to introduce permanent daylight saving time (similar
+# to Russia) was reverted today:
+#
+# <a href="http://portal.rada.gov.ua/rada/control/en/publish/article/info_left?art_id=287324&cat_id=105995">
+# http://portal.rada.gov.ua/rada/control/en/publish/article/info_left?art_id=287324&cat_id=105995
+# </a>
+#
+# Also reported by Alexander Bokovoy (2011-10-18) who also noted:
+# The law documents themselves are at
+#
+# <a href="http://w1.c1.rada.gov.ua/pls/zweb_n/webproc4_1?id=&pf3511=41484">
+# http://w1.c1.rada.gov.ua/pls/zweb_n/webproc4_1?id=&pf3511=41484
+# </a>
+
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 # Most of Ukraine since 1970 has been like Kiev.
@@ -2687,8 +2750,7 @@
 			3:00	-	MSK	1990 Jul  1 2:00
 			2:00	-	EET	1992
 			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT	2011 Mar lastSun 1:00u
-			3:00	-	FET # Further-eastern European Time
+			2:00	EU	EE%sT
 # Ruthenia used CET 1990/1991.
 # "Uzhhorod" is the transliteration of the Ukrainian name, but
 # "Uzhgorod" is more common in English.
@@ -2702,8 +2764,7 @@
 			1:00	-	CET	1991 Mar 31 3:00
 			2:00	-	EET	1992
 			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT	2011 Mar lastSun 1:00u
-			3:00	-	FET # Further-eastern European Time
+			2:00	EU	EE%sT
 # Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
 # "Zaporizhia" is the transliteration of the Ukrainian name, but
 # "Zaporozh'ye" is more common in English.  Use the common English
@@ -2716,8 +2777,7 @@
 			1:00	C-Eur	CE%sT	1943 Oct 25
 			3:00	Russia	MSK/MSD	1991 Mar 31 2:00
 			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT	2011 Mar lastSun 1:00u
-			3:00	-	FET # Further-eastern European Time
+			2:00	EU	EE%sT
 # Central Crimea used Moscow time 1994/1997.
 Zone Europe/Simferopol	2:16:24 -	LMT	1880
 			2:16	-	SMT	1924 May  2 # Simferopol Mean T
@@ -2742,8 +2802,7 @@
 # Assume it happened in March by not changing the clocks.
 			3:00	Russia	MSK/MSD	1997
 			3:00	-	MSK	1997 Mar lastSun 1:00u
-			2:00	EU	EE%sT	2011 Mar lastSun 1:00u
-			3:00	-	FET # Further-eastern European Time
+			2:00	EU	EE%sT
 
 ###############################################################################
 
--- a/make/sun/javazic/tzdata/leapseconds	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/leapseconds	Tue May 08 07:34:53 2012 -0700
@@ -70,40 +70,54 @@
 Leap	1998	Dec	31	23:59:60	+	S
 Leap	2005	Dec	31	23:59:60	+	S
 Leap	2008	Dec	31	23:59:60	+	S
+Leap	2012	Jun	30	23:59:60	+	S
 
 # INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
 #
 # SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
 #
+#
 # SERVICE DE LA ROTATION TERRESTRE
 # OBSERVATOIRE DE PARIS
 # 61, Av. de l'Observatoire 75014 PARIS (France)
-# Tel.      : 33 (0) 1 40 51 22 29
+# Tel.      : 33 (0) 1 40 51 22 26
 # FAX       : 33 (0) 1 40 51 22 91
-# Internet  : services.iers@obspm.fr
+# e-mail    : (E-Mail Removed)
+# http://hpiers.obspm.fr/eop-pc
 #
-# Paris, 2 February 2011
+# Paris, 5 January 2012
 #
-# Bulletin C 41
+#
+# Bulletin C 43
 #
 # To authorities responsible
 # for the measurement and
 # distribution of time
 #
-# INFORMATION ON UTC - TAI
+#
+# UTC TIME STEP
+# on the 1st of July 2012
+#
 #
-# NO positive leap second will be introduced at the end of June 2011.
-# The difference between Coordinated Universal Time UTC and the
-# International Atomic Time TAI is :		
+# A positive leap second will be introduced at the end of June 2012.
+# The sequence of dates of the UTC second markers will be:		
+# 		
+#                          2012 June 30,     23h 59m 59s
+#                          2012 June 30,     23h 59m 60s
+#                          2012 July  1,      0h  0m  0s
 #
-# from 2009 January 1, 0h UTC, until further notice : UTC-TAI = -34 s
+# The difference between UTC and the International Atomic Time TAI is:
+#
+# from 2009 January 1, 0h UTC, to 2012 July 1  0h UTC  : UTC-TAI = - 34s
+# from 2012 July 1,    0h UTC, until further notice    : UTC-TAI = - 35s
 #
 # Leap seconds can be introduced in UTC at the end of the months of December
-# or June,  depending on the evolution of UT1-TAI. Bulletin C is mailed every
-# six months, either to announce a time step in UTC, or to confirm that there
+# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
+# six months, either to announce a time step in UTC or to confirm that there
 # will be no time step at the next possible date.
 #
+#
 # Daniel GAMBIS
-# Head			
-# Earth Orientation Center of the IERS
+# Head		
+# Earth Orientation Center of IERS
 # Observatoire de Paris, France
--- a/make/sun/javazic/tzdata/northamerica	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/northamerica	Tue May 08 07:34:53 2012 -0700
@@ -1142,9 +1142,26 @@
 # For now, assume all of DST-observing Canada will fall into line with the
 # new US DST rules,
 
+# From Chris Walton (2011-12-01)
+# In the first of Tammy Hardwick's articles
+# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260">
+# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
+# </a>
+# she quotes the Friday November 1/1918 edition of the Creston Review.
+# The quote includes these two statements:
+# 'Sunday the CPR went back to the old system of time...'
+# '... The daylight saving scheme was dropped all over Canada at the same time,'
+# These statements refer to a transition from daylight time to standard time
+# that occurred nationally on Sunday October 27/1918.  This transition was
+# also documented in the Saturday October 26/1918 edition of the Toronto Star.
+
+# In light of that evidence, we alter the date from the earlier believed
+# Oct 31, to Oct 27, 1918 (and Sunday is a more likely transition day
+# than Thursday) in all Canadian rulesets.
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Canada	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Canada	1918	only	-	Oct	31	2:00	0	S
+Rule	Canada	1918	only	-	Oct	27	2:00	0	S
 Rule	Canada	1942	only	-	Feb	 9	2:00	1:00	W # War
 Rule	Canada	1945	only	-	Aug	14	23:00u	1:00	P # Peace
 Rule	Canada	1945	only	-	Sep	30	2:00	0	S
@@ -1667,7 +1684,7 @@
 Rule	Winn	1916	only	-	Apr	23	0:00	1:00	D
 Rule	Winn	1916	only	-	Sep	17	0:00	0	S
 Rule	Winn	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Winn	1918	only	-	Oct	31	2:00	0	S
+Rule	Winn	1918	only	-	Oct	27	2:00	0	S
 Rule	Winn	1937	only	-	May	16	2:00	1:00	D
 Rule	Winn	1937	only	-	Sep	26	2:00	0	S
 Rule	Winn	1942	only	-	Feb	 9	2:00	1:00	W # War
@@ -1750,7 +1767,7 @@
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Regina	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Regina	1918	only	-	Oct	31	2:00	0	S
+Rule	Regina	1918	only	-	Oct	27	2:00	0	S
 Rule	Regina	1930	1934	-	May	Sun>=1	0:00	1:00	D
 Rule	Regina	1930	1934	-	Oct	Sun>=1	0:00	0	S
 Rule	Regina	1937	1941	-	Apr	Sun>=8	0:00	1:00	D
@@ -1787,7 +1804,7 @@
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Edm	1918	1919	-	Apr	Sun>=8	2:00	1:00	D
-Rule	Edm	1918	only	-	Oct	31	2:00	0	S
+Rule	Edm	1918	only	-	Oct	27	2:00	0	S
 Rule	Edm	1919	only	-	May	27	2:00	0	S
 Rule	Edm	1920	1923	-	Apr	lastSun	2:00	1:00	D
 Rule	Edm	1920	only	-	Oct	lastSun	2:00	0	S
@@ -1817,9 +1834,68 @@
 # Dawson Creek uses MST.  Much of east BC is like Edmonton.
 # Matthews and Vincent (1998) write that Creston is like Dawson Creek.
 
+# It seems though that (re: Creston) is not entirely correct:
+
+# From Chris Walton (2011-12-01):
+# There are two areas within the Canadian province of British Columbia
+# that do not currently observe daylight saving:
+# a) The Creston Valley (includes the town of Creston and surrounding area)
+# b) The eastern half of the Peace River Regional District
+# (includes the cities of Dawson Creek and Fort St. John)
+
+# Earlier this year I stumbled across a detailed article about the time
+# keeping history of Creston; it was written by Tammy Hardwick who is the
+# manager of the Creston & District Museum. The article was written in May 2009.
+# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260">
+# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
+# </a>
+# According to the article, Creston has not changed its clocks since June 1918.
+# i.e. Creston has been stuck on UTC-7 for 93 years.
+# Dawson Creek, on the other hand, changed its clocks as recently as April 1972.
+
+# Unfortunately the exact date for the time change in June 1918 remains
+# unknown and will be difficult to ascertain.  I e-mailed Tammy a few months
+# ago to ask if Sunday June 2 was a reasonable guess.  She said it was just
+# as plausible as any other date (in June).  She also said that after writing the
+# article she had discovered another time change in 1916; this is the subject
+# of another article which she wrote in October 2010.
+# <a href="http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56">
+# http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56
+# </a>
+
+# Here is a summary of the three clock change events in Creston's history:
+# 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7)
+# Exact date unknown
+# 2. Oct 1916: switch to Pacific Standard Time (GMT-8) 
+# Exact date in October unknown;  Sunday October 1 is a reasonable guess.
+# 3. June 1918: switch to Pacific Daylight Time (GMT-7)
+# Exact date in June unknown; Sunday June 2 is a reasonable guess.
+# note#1:
+# On Oct 27/1918 when daylight saving ended in the rest of Canada,
+# Creston did not change its clocks.
+# note#2:
+# During WWII when the Federal Government legislated a mandatory clock change,
+# Creston did not oblige.
+# note#3:
+# There is no guarantee that Creston will remain on Mountain Standard Time
+# (UTC-7) forever.
+# The subject was debated at least once this year by the town Council.
+# <a href="http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html">
+# http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html
+# </a>
+
+# During a period WWII, summer time (Daylight saying) was mandatory in Canada.
+# In Creston, that was handled by shifting the area to PST (-8:00) then applying
+# summer time to cause the offset to be -7:00, the same as it had been before
+# the change.  It can be argued that the timezone abbreviation during this
+# period should be PDT rather than MST, but that doesn't seem important enough
+# (to anyone) to further complicate the rules.
+
+# The transition dates (and times) are guesses.
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Vanc	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Vanc	1918	only	-	Oct	31	2:00	0	S
+Rule	Vanc	1918	only	-	Oct	27	2:00	0	S
 Rule	Vanc	1942	only	-	Feb	 9	2:00	1:00	W # War
 Rule	Vanc	1945	only	-	Aug	14	23:00u	1:00	P # Peace
 Rule	Vanc	1945	only	-	Sep	30	2:00	0	S
@@ -1835,7 +1911,10 @@
 			-8:00	Canada	P%sT	1947
 			-8:00	Vanc	P%sT	1972 Aug 30 2:00
 			-7:00	-	MST
-
+Zone America/Creston	-7:46:04 -	LMT	1884
+			-7:00	-	MST	1916 Oct 1
+			-8:00	-	PST	1918 Jun 2
+			-7:00	-	MST
 
 # Northwest Territories, Nunavut, Yukon
 
@@ -2712,6 +2791,34 @@
 # <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html">
 # http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
 # </a>
+#
+# From Steffen Thorsen (2011-10-30)
+# Cuba will end DST two weeks later this year. Instead of going back 
+# tonight, it has been delayed to 2011-11-13 at 01:00.
+#
+# One source (Spanish)
+# <a href="http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html">
+# http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
+# </a>
+#
+# Our page:
+# <a href="http://www.timeanddate.com/news/time/cuba-time-changes-2011.html">
+# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
+# </a>
+# 
+# From Steffen Thorsen (2012-03-01)
+# According to Radio Reloj, Cuba will start DST on Midnight between March 
+# 31 and April 1.
+# 
+# Radio Reloj has the following info (Spanish):
+# <a href="http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril">
+# http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
+# </a>
+#
+# Our info on it:
+# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html">
+# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
+# </a>
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Cuba	1928	only	-	Jun	10	0:00	1:00	D
@@ -2743,12 +2850,15 @@
 Rule	Cuba	1998	1999	-	Mar	lastSun	0:00s	1:00	D
 Rule	Cuba	1998	2003	-	Oct	lastSun	0:00s	0	S
 Rule	Cuba	2000	2004	-	Apr	Sun>=1	0:00s	1:00	D
-Rule	Cuba	2006	max	-	Oct	lastSun	0:00s	0	S
+Rule	Cuba	2006	2010	-	Oct	lastSun	0:00s	0	S
 Rule	Cuba	2007	only	-	Mar	Sun>=8	0:00s	1:00	D
 Rule	Cuba	2008	only	-	Mar	Sun>=15	0:00s	1:00	D
 Rule	Cuba	2009	2010	-	Mar	Sun>=8	0:00s	1:00	D
 Rule	Cuba	2011	only	-	Mar	Sun>=15	0:00s	1:00	D
-Rule	Cuba	2012	max	-	Mar	Sun>=8	0:00s	1:00	D
+Rule	Cuba	2011	only	-	Nov	13	0:00s	0	S
+Rule	Cuba	2012	only	-	Apr	1	0:00s	1:00	D
+Rule	Cuba	2012	max	-	Oct	lastSun	0:00s	0	S
+Rule	Cuba	2013	max	-	Mar	Sun>=8	0:00s	1:00	D
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	America/Havana	-5:29:28 -	LMT	1890
@@ -2882,6 +2992,29 @@
 # From Stephen Colebourne (2007-02-22):
 # Some IATA info: Haiti won't be having DST in 2007.
 
+# From Steffen Thorsen (2012-03-11):
+# According to several news sources, Haiti will observe DST this year,
+# apparently using the same start and end date as USA/Canada.
+# So this means they have already changed their time.
+#
+# (Sources in French):
+# <a href="http://www.alterpresse.org/spip.php?article12510">
+# http://www.alterpresse.org/spip.php?article12510
+# </a>
+# <a href="http://radiovision2000haiti.net/home/?p=13253">
+# http://radiovision2000haiti.net/home/?p=13253
+# </a>
+#
+# Our coverage:
+# <a href="http://www.timeanddate.com/news/time/haiti-dst-2012.html">
+# http://www.timeanddate.com/news/time/haiti-dst-2012.html
+# </a>
+
+# From Arthur David Olson (2012-03-11):
+# The alterpresse.org source seems to show a US-style leap from 2:00 a.m. to
+# 3:00 a.m. rather than the traditional Haitian jump at midnight.
+# Assume a US-style fall back as well XXX.
+# Do not yet assume that the change carries forward past 2012 XXX.
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Haiti	1983	only	-	May	8	0:00	1:00	D
@@ -2893,6 +3026,8 @@
 Rule	Haiti	1988	1997	-	Oct	lastSun	1:00s	0	S
 Rule	Haiti	2005	2006	-	Apr	Sun>=1	0:00	1:00	D
 Rule	Haiti	2005	2006	-	Oct	lastSun	0:00	0	S
+Rule	Haiti	2012	only	-	Mar	Sun>=8	2:00	1:00	D
+Rule	Haiti	2012	only	-	Nov	Sun>=1	2:00	0	S
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Port-au-Prince -4:49:20 -	LMT	1890
 			-4:49	-	PPMT	1917 Jan 24 12:00 # P-a-P MT
--- a/make/sun/javazic/tzdata/southamerica	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/southamerica	Tue May 08 07:34:53 2012 -0700
@@ -840,6 +840,19 @@
 # oficial agency about time in Brazil, and she confirmed that the old rule is
 # still in force.
 
+# From Guilherme Bernardes Rodrigues (2011-10-14)
+# It's official, the President signed a decree that includes Bahia in summer
+# time.
+#	 [ and in a second message (same day): ]
+# I found the decree.
+#
+# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
+# Link :
+# <a href="http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6">
+# http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
+# </a>
+
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 # Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
 # Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
@@ -1076,10 +1089,8 @@
 # of America/Salvador.
 Zone America/Bahia	-2:34:04 -	LMT	1914
 			-3:00	Brazil	BR%sT	2003 Sep 24
-			-3:00	-	BRT
-# as noted above, not yet in operation.
-#			-3:00	-	BRT	2011 Oct 16
-#			-3:00	Brazil	BR%sT
+			-3:00	-	BRT	2011 Oct 16
+			-3:00	Brazil	BR%sT
 #
 # Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
 # Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
@@ -1229,6 +1240,28 @@
 # August, not in October as they have since 1968. This is a pilot plan
 # which will be reevaluated in 2012.
 
+# From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
+# As stated in the website of the Chilean Energy Ministry
+# http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
+# The Chilean Government has decided to postpone the entrance into winter time
+# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
+# been yet formalized but it will within the next days.
+# Quote from the website communication:
+#
+# 6. For the year 2012, the dates of entry into winter time will be as follows:
+# a. Saturday April 28, 2012, clocks should go back 60 minutes; that is, at
+# 23:59:59, instead of passing to 0:00, the time should be adjusted to be 23:00
+# of the same day.
+# b. Saturday, September 1, 2012, clocks should go forward 60 minutes; that is,
+# at 23:59:59, instead of passing to 0:00, the time should be adjusted to be
+# 01:00 on September 2.
+#
+# Note that...this is yet another "temporary" change that will be reevaluated
+# AGAIN in 2013.
+
+# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
+# 'antarctica' file.
+
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Chile	1927	1932	-	Sep	 1	0:00	1:00	S
 Rule	Chile	1928	1932	-	Apr	 1	0:00	0	-
@@ -1259,8 +1292,6 @@
 Rule	Chile	1998	only	-	Sep	27	4:00u	1:00	S
 Rule	Chile	1999	only	-	Apr	 4	3:00u	0	-
 Rule	Chile	1999	2010	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	2011	only	-	Aug	Sun>=16	4:00u	1:00	S
-Rule	Chile	2012	max	-	Oct	Sun>=9	4:00u	1:00	S
 Rule	Chile	2000	2007	-	Mar	Sun>=9	3:00u	0	-
 # N.B.: the end of March 29 in Chile is March 30 in Universal time,
 # which is used below in specifying the transition.
@@ -1268,7 +1299,11 @@
 Rule	Chile	2009	only	-	Mar	Sun>=9	3:00u	0	-
 Rule	Chile	2010	only	-	Apr	Sun>=1	3:00u	0	-
 Rule	Chile	2011	only	-	May	Sun>=2	3:00u	0	-
-Rule	Chile	2012	max	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	2011	only	-	Aug	Sun>=16	4:00u	1:00	S
+Rule	Chile	2012	only	-	Apr	Sun>=23	3:00u	0	-
+Rule	Chile	2012	only	-	Sep	Sun>=2	4:00u	1:00	S
+Rule	Chile	2013	max	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	2013	max	-	Oct	Sun>=9	4:00u	1:00	S
 # IATA SSIM anomalies: (1992-02) says 1992-03-14;
 # (1996-09) says 1998-03-08.  Ignore these.
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
@@ -1414,6 +1449,21 @@
 # will not revert to local mean time, but clocks will remain on Summer
 # time (UTC/GMT - 3 hours) throughout the whole of 2011.  Any long term
 # change to local time following the trial period will be notified.
+#
+# From Andrew Newman (2012-02-24)
+# A letter from Justin McPhee, Chief Executive,
+# Cable & Wireless Falkland Islands (dated 2012-02-22)
+# states...
+#   The current Atlantic/Stanley entry under South America expects the
+#   clocks to go back to standard Falklands Time (FKT) on the 15th April.
+#   The database entry states that in 2011 Stanley was staying on fixed
+#   summer time on a trial basis only.  FIG need to contact IANA and/or
+#   the maintainers of the database to inform them we're adopting
+#   the same policy this year and suggest recommendations for future years.
+#
+# For now we will assume permanent summer time for the Falklands
+# until advised differently (to apply for 2012 and beyond, after the 2011
+# experiment was apparently successful.)
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	Falk	1937	1938	-	Sep	lastSun	0:00	1:00	S
 Rule	Falk	1938	1942	-	Mar	Sun>=19	0:00	0	-
@@ -1426,14 +1476,14 @@
 Rule	Falk	1985	2000	-	Sep	Sun>=9	0:00	1:00	S
 Rule	Falk	1986	2000	-	Apr	Sun>=16	0:00	0	-
 Rule	Falk	2001	2010	-	Apr	Sun>=15	2:00	0	-
-Rule	Falk	2012	max	-	Apr	Sun>=15	2:00	0	-
-Rule	Falk	2001	max	-	Sep	Sun>=1	2:00	1:00	S
+Rule	Falk	2001	2010	-	Sep	Sun>=1	2:00	1:00	S
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone Atlantic/Stanley	-3:51:24 -	LMT	1890
 			-3:51:24 -	SMT	1912 Mar 12  # Stanley Mean Time
 			-4:00	Falk	FK%sT	1983 May     # Falkland Is Time
 			-3:00	Falk	FK%sT	1985 Sep 15
-			-4:00	Falk	FK%sT
+			-4:00	Falk	FK%sT	2010 Sep 5 02:00
+			-3:00	-	FKST
 
 # French Guiana
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
--- a/make/sun/javazic/tzdata/zone.tab	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/javazic/tzdata/zone.tab	Tue May 08 07:34:53 2012 -0700
@@ -153,6 +153,7 @@
 CA	+690650-1050310	America/Cambridge_Bay	Mountain Time - west Nunavut
 CA	+6227-11421	America/Yellowknife	Mountain Time - central Northwest Territories
 CA	+682059-1334300	America/Inuvik	Mountain Time - west Northwest Territories
+CA	+4906-11631	America/Creston	Mountain Standard Time - Creston, British Columbia
 CA	+5946-12014	America/Dawson_Creek	Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
 CA	+4916-12307	America/Vancouver	Pacific Time - west British Columbia
 CA	+6043-13503	America/Whitehorse	Pacific Time - south Yukon
@@ -355,7 +356,7 @@
 RU	+5443+02030	Europe/Kaliningrad	Moscow-01 - Kaliningrad
 RU	+5545+03735	Europe/Moscow	Moscow+00 - west Russia
 RU	+4844+04425	Europe/Volgograd	Moscow+00 - Caspian Sea
-RU	+5312+05009	Europe/Samara	Moscow - Samara, Udmurtia
+RU	+5312+05009	Europe/Samara	Moscow+00 - Samara, Udmurtia
 RU	+5651+06036	Asia/Yekaterinburg	Moscow+02 - Urals
 RU	+5500+07324	Asia/Omsk	Moscow+03 - west Siberia
 RU	+5502+08255	Asia/Novosibirsk	Moscow+03 - Novosibirsk
--- a/make/sun/tracing/dtrace/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/tracing/dtrace/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2012, Oracle and/or its affiliates. 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
@@ -26,6 +26,9 @@
 #
 # Makefile for building dtrace extension
 #
+
+LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS=1
+
 BUILDDIR = ../../..
 PACKAGE = sun.tracing.dtrace
 LIBRARY = jsdt
--- a/make/sun/xawt/Makefile	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/sun/xawt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -56,7 +56,7 @@
 dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
 endif
 
-ifeq ($(PLATFORM), macosx))
+ifeq ($(PLATFORM), macosx)
 LDFLAGS += -pthread
 dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
 endif
--- a/make/tools/GenerateCharacter/CharacterData00.java.template	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/GenerateCharacter/CharacterData00.java.template	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -211,6 +211,8 @@
             case 0x10C3 : mapChar = 0x2D23; break;
             case 0x10C4 : mapChar = 0x2D24; break;
             case 0x10C5 : mapChar = 0x2D25; break;
+            case 0x10C7 : mapChar = 0x2D27; break;
+            case 0x10CD : mapChar = 0x2D2D; break;
             case 0x1E9E : mapChar = 0x00DF; break;
             case 0x2C62 : mapChar = 0x026B; break;
             case 0x2C63 : mapChar = 0x1D7D; break;
@@ -223,6 +225,7 @@
             case 0x2C7F : mapChar = 0x0240; break;
             case 0xA77D : mapChar = 0x1D79; break;
             case 0xA78D : mapChar = 0x0265; break;
+            case 0xA7AA : mapChar = 0x0266; break;
               // default mapChar is already set, so no
               // need to redo it here.
               // default       : mapChar = ch;
@@ -282,6 +285,7 @@
             case 0x0251 : mapChar = 0x2C6D; break;
             case 0x0252 : mapChar = 0x2C70; break;
             case 0x0265 : mapChar = 0xA78D; break;
+            case 0x0266 : mapChar = 0xA7AA; break;
             case 0x026B : mapChar = 0x2C62; break;
             case 0x0271 : mapChar = 0x2C6E; break;
             case 0x027D : mapChar = 0x2C64; break;
@@ -327,6 +331,8 @@
             case 0x2D23 : mapChar = 0x10C3; break;
             case 0x2D24 : mapChar = 0x10C4; break;
             case 0x2D25 : mapChar = 0x10C5; break;
+            case 0x2D27 : mapChar = 0x10C7; break;
+            case 0x2D2D : mapChar = 0x10CD; break;
               // ch must have a 1:M case mapping, but we
               // can't handle it here. Return ch.
               // since mapChar is already set, no need
@@ -425,6 +431,11 @@
                 case 0x2181: retval = 5000; break;        // ROMAN NUMERAL FIVE THOUSAND
                 case 0x2182: retval = 10000; break;       // ROMAN NUMERAL TEN THOUSAND
 
+                case 0x324B: retval = 40; break;
+                case 0x324C: retval = 50; break;
+                case 0x324D: retval = 60; break;
+                case 0x324E: retval = 70; break;
+                case 0x324F: retval = 80; break;
                 case 0x325C: retval = 32; break;
 
                 case 0x325D: retval = 33; break;          // CIRCLED NUMBER THIRTY THREE
@@ -527,6 +538,7 @@
                     case 0x0251 : mapChar = 0x2C6D; break;
                     case 0x0252 : mapChar = 0x2C70; break;
                     case 0x0265 : mapChar = 0xA78D; break;
+                    case 0x0266 : mapChar = 0xA7AA; break;
                     case 0x026B : mapChar = 0x2C62; break;
                     case 0x0271 : mapChar = 0x2C6E; break;
                     case 0x027D : mapChar = 0x2C64; break;
@@ -572,6 +584,8 @@
                     case 0x2D23 : mapChar = 0x10C3; break;
                     case 0x2D24 : mapChar = 0x10C4; break;
                     case 0x2D25 : mapChar = 0x10C5; break;
+                    case 0x2D27 : mapChar = 0x10C7; break;
+                    case 0x2D2D : mapChar = 0x10CD; break;
                     default       : mapChar = Character.ERROR; break;
                 }
             }
--- a/make/tools/UnicodeData/PropList.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/UnicodeData/PropList.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,8 +1,8 @@
-# PropList-6.0.0.txt
-# Date: 2010-08-19, 00:48:28 GMT [MD]
+# PropList-6.1.0.txt
+# Date: 2011-11-30, 01:49:54 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 
@@ -50,6 +50,7 @@
 2212          ; Dash # Sm       MINUS SIGN
 2E17          ; Dash # Pd       DOUBLE OBLIQUE HYPHEN
 2E1A          ; Dash # Pd       HYPHEN WITH DIAERESIS
+2E3A..2E3B    ; Dash # Pd   [2] TWO-EM DASH..THREE-EM DASH
 301C          ; Dash # Pd       WAVE DASH
 3030          ; Dash # Pd       WAVY DASH
 30A0          ; Dash # Pd       KATAKANA-HIRAGANA DOUBLE HYPHEN
@@ -58,7 +59,7 @@
 FE63          ; Dash # Pd       SMALL HYPHEN-MINUS
 FF0D          ; Dash # Pd       FULLWIDTH HYPHEN-MINUS
 
-# Total code points: 25
+# Total code points: 27
 
 # ================================================
 
@@ -158,6 +159,7 @@
 A9C7..A9C9    ; Terminal_Punctuation # Po   [3] JAVANESE PADA PANGKAT..JAVANESE PADA LUNGSI
 AA5D..AA5F    ; Terminal_Punctuation # Po   [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
 AADF          ; Terminal_Punctuation # Po       TAI VIET SYMBOL KOI KOI
+AAF0..AAF1    ; Terminal_Punctuation # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; Terminal_Punctuation # Po       MEETEI MAYEK CHEIKHEI
 FE50..FE52    ; Terminal_Punctuation # Po   [3] SMALL COMMA..SMALL FULL STOP
 FE54..FE57    ; Terminal_Punctuation # Po   [4] SMALL SEMICOLON..SMALL EXCLAMATION MARK
@@ -175,9 +177,11 @@
 10B3A..10B3F  ; Terminal_Punctuation # Po   [6] TINY TWO DOTS OVER ONE DOT PUNCTUATION..LARGE ONE RING OVER TWO RINGS PUNCTUATION
 11047..1104D  ; Terminal_Punctuation # Po   [7] BRAHMI DANDA..BRAHMI PUNCTUATION LOTUS
 110BE..110C1  ; Terminal_Punctuation # Po   [4] KAITHI SECTION MARK..KAITHI DOUBLE DANDA
+11141..11143  ; Terminal_Punctuation # Po   [3] CHAKMA DANDA..CHAKMA QUESTION MARK
+111C5..111C6  ; Terminal_Punctuation # Po   [2] SHARADA DANDA..SHARADA DOUBLE DANDA
 12470..12473  ; Terminal_Punctuation # Po   [4] CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON
 
-# Total code points: 169
+# Total code points: 176
 
 # ================================================
 
@@ -320,8 +324,41 @@
 1D7AA..1D7C2  ; Other_Math # L&  [25] MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA..MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA
 1D7C4..1D7CB  ; Other_Math # L&   [8] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL BOLD SMALL DIGAMMA
 1D7CE..1D7FF  ; Other_Math # Nd  [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE
+1EE00..1EE03  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL
+1EE05..1EE1F  ; Other_Math # Lo  [27] ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF
+1EE21..1EE22  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM
+1EE24         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL HEH
+1EE27         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL HAH
+1EE29..1EE32  ; Other_Math # Lo  [10] ARABIC MATHEMATICAL INITIAL YEH..ARABIC MATHEMATICAL INITIAL QAF
+1EE34..1EE37  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL INITIAL SHEEN..ARABIC MATHEMATICAL INITIAL KHAH
+1EE39         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL DAD
+1EE3B         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL GHAIN
+1EE42         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED JEEM
+1EE47         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED HAH
+1EE49         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED YEH
+1EE4B         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED LAM
+1EE4D..1EE4F  ; Other_Math # Lo   [3] ARABIC MATHEMATICAL TAILED NOON..ARABIC MATHEMATICAL TAILED AIN
+1EE51..1EE52  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL TAILED SAD..ARABIC MATHEMATICAL TAILED QAF
+1EE54         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED SHEEN
+1EE57         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED KHAH
+1EE59         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DAD
+1EE5B         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED GHAIN
+1EE5D         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DOTLESS NOON
+1EE5F         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DOTLESS QAF
+1EE61..1EE62  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL STRETCHED BEH..ARABIC MATHEMATICAL STRETCHED JEEM
+1EE64         ; Other_Math # Lo       ARABIC MATHEMATICAL STRETCHED HEH
+1EE67..1EE6A  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED HAH..ARABIC MATHEMATICAL STRETCHED KAF
+1EE6C..1EE72  ; Other_Math # Lo   [7] ARABIC MATHEMATICAL STRETCHED MEEM..ARABIC MATHEMATICAL STRETCHED QAF
+1EE74..1EE77  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED SHEEN..ARABIC MATHEMATICAL STRETCHED KHAH
+1EE79..1EE7C  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED DAD..ARABIC MATHEMATICAL STRETCHED DOTLESS BEH
+1EE7E         ; Other_Math # Lo       ARABIC MATHEMATICAL STRETCHED DOTLESS FEH
+1EE80..1EE89  ; Other_Math # Lo  [10] ARABIC MATHEMATICAL LOOPED ALEF..ARABIC MATHEMATICAL LOOPED YEH
+1EE8B..1EE9B  ; Other_Math # Lo  [17] ARABIC MATHEMATICAL LOOPED LAM..ARABIC MATHEMATICAL LOOPED GHAIN
+1EEA1..1EEA3  ; Other_Math # Lo   [3] ARABIC MATHEMATICAL DOUBLE-STRUCK BEH..ARABIC MATHEMATICAL DOUBLE-STRUCK DAL
+1EEA5..1EEA9  ; Other_Math # Lo   [5] ARABIC MATHEMATICAL DOUBLE-STRUCK WAW..ARABIC MATHEMATICAL DOUBLE-STRUCK YEH
+1EEAB..1EEBB  ; Other_Math # Lo  [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN
 
-# Total code points: 1217
+# Total code points: 1358
 
 # ================================================
 
@@ -365,6 +402,8 @@
 081B..0823    ; Other_Alphabetic # Mn   [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
 0825..0827    ; Other_Alphabetic # Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
 0829..082C    ; Other_Alphabetic # Mn   [4] SAMARITAN VOWEL SIGN LONG I..SAMARITAN VOWEL SIGN SUKUN
+08E4..08E9    ; Other_Alphabetic # Mn   [6] ARABIC CURLY FATHA..ARABIC CURLY KASRATAN
+08F0..08FE    ; Other_Alphabetic # Mn  [15] ARABIC OPEN FATHATAN..ARABIC DAMMA WITH DOT
 0900..0902    ; Other_Alphabetic # Mn   [3] DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI SIGN ANUSVARA
 0903          ; Other_Alphabetic # Mc       DEVANAGARI SIGN VISARGA
 093A          ; Other_Alphabetic # Mn       DEVANAGARI VOWEL SIGN OE
@@ -525,6 +564,7 @@
 1BA2..1BA5    ; Other_Alphabetic # Mn   [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
 1BA6..1BA7    ; Other_Alphabetic # Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
 1BA8..1BA9    ; Other_Alphabetic # Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
+1BAC..1BAD    ; Other_Alphabetic # Mc   [2] SUNDANESE CONSONANT SIGN PASANGAN MA..SUNDANESE CONSONANT SIGN PASANGAN WA
 1BE7          ; Other_Alphabetic # Mc       BATAK VOWEL SIGN E
 1BE8..1BE9    ; Other_Alphabetic # Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
 1BEA..1BEC    ; Other_Alphabetic # Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
@@ -534,9 +574,11 @@
 1C24..1C2B    ; Other_Alphabetic # Mc   [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
 1C2C..1C33    ; Other_Alphabetic # Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
 1C34..1C35    ; Other_Alphabetic # Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
-1CF2          ; Other_Alphabetic # Mc       VEDIC SIGN ARDHAVISARGA
+1CF2..1CF3    ; Other_Alphabetic # Mc   [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
 24B6..24E9    ; Other_Alphabetic # So  [52] CIRCLED LATIN CAPITAL LETTER A..CIRCLED LATIN SMALL LETTER Z
 2DE0..2DFF    ; Other_Alphabetic # Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
+A674..A67B    ; Other_Alphabetic # Mn   [8] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC LETTER OMEGA
+A69F          ; Other_Alphabetic # Mn       COMBINING CYRILLIC LETTER IOTIFIED E
 A823..A824    ; Other_Alphabetic # Mc   [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I
 A825..A826    ; Other_Alphabetic # Mn   [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
 A827          ; Other_Alphabetic # Mc       SYLOTI NAGRI VOWEL SIGN OO
@@ -564,6 +606,10 @@
 AAB2..AAB4    ; Other_Alphabetic # Mn   [3] TAI VIET VOWEL I..TAI VIET VOWEL U
 AAB7..AAB8    ; Other_Alphabetic # Mn   [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
 AABE          ; Other_Alphabetic # Mn       TAI VIET VOWEL AM
+AAEB          ; Other_Alphabetic # Mc       MEETEI MAYEK VOWEL SIGN II
+AAEC..AAED    ; Other_Alphabetic # Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
+AAEE..AAEF    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
+AAF5          ; Other_Alphabetic # Mc       MEETEI MAYEK VOWEL SIGN VISARGA
 ABE3..ABE4    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
 ABE5          ; Other_Alphabetic # Mn       MEETEI MAYEK VOWEL SIGN ANAP
 ABE6..ABE7    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP
@@ -581,8 +627,23 @@
 110B0..110B2  ; Other_Alphabetic # Mc   [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II
 110B3..110B6  ; Other_Alphabetic # Mn   [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
 110B7..110B8  ; Other_Alphabetic # Mc   [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU
+11100..11102  ; Other_Alphabetic # Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
+11127..1112B  ; Other_Alphabetic # Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
+1112C         ; Other_Alphabetic # Mc       CHAKMA VOWEL SIGN E
+1112D..11132  ; Other_Alphabetic # Mn   [6] CHAKMA VOWEL SIGN AI..CHAKMA AU MARK
+11180..11181  ; Other_Alphabetic # Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
+11182         ; Other_Alphabetic # Mc       SHARADA SIGN VISARGA
+111B3..111B5  ; Other_Alphabetic # Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
+111B6..111BE  ; Other_Alphabetic # Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
+111BF         ; Other_Alphabetic # Mc       SHARADA VOWEL SIGN AU
+116AB         ; Other_Alphabetic # Mn       TAKRI SIGN ANUSVARA
+116AC         ; Other_Alphabetic # Mc       TAKRI SIGN VISARGA
+116AD         ; Other_Alphabetic # Mn       TAKRI VOWEL SIGN AA
+116AE..116AF  ; Other_Alphabetic # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
+116B0..116B5  ; Other_Alphabetic # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
+16F51..16F7E  ; Other_Alphabetic # Mc  [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
 
-# Total code points: 795
+# Total code points: 922
 
 # ================================================
 
@@ -591,16 +652,15 @@
 3021..3029    ; Ideographic # Nl   [9] HANGZHOU NUMERAL ONE..HANGZHOU NUMERAL NINE
 3038..303A    ; Ideographic # Nl   [3] HANGZHOU NUMERAL TEN..HANGZHOU NUMERAL THIRTY
 3400..4DB5    ; Ideographic # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Ideographic # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
-F900..FA2D    ; Ideographic # Lo [302] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA2D
-FA30..FA6D    ; Ideographic # Lo  [62] CJK COMPATIBILITY IDEOGRAPH-FA30..CJK COMPATIBILITY IDEOGRAPH-FA6D
+4E00..9FCC    ; Ideographic # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
+F900..FA6D    ; Ideographic # Lo [366] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA6D
 FA70..FAD9    ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
 20000..2A6D6  ; Ideographic # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
 2A700..2B734  ; Ideographic # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Ideographic # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 2F800..2FA1D  ; Ideographic # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 75630
+# Total code points: 75633
 
 # ================================================
 
@@ -645,6 +705,7 @@
 07EB..07F3    ; Diacritic # Mn   [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
 07F4..07F5    ; Diacritic # Lm   [2] NKO HIGH TONE APOSTROPHE..NKO LOW TONE APOSTROPHE
 0818..0819    ; Diacritic # Mn   [2] SAMARITAN MARK OCCLUSION..SAMARITAN MARK DAGESH
+08E4..08FE    ; Diacritic # Mn  [27] ARABIC CURLY FATHA..ARABIC DAMMA WITH DOT
 093C          ; Diacritic # Mn       DEVANAGARI SIGN NUKTA
 094D          ; Diacritic # Mn       DEVANAGARI SIGN VIRAMA
 0951..0954    ; Diacritic # Mn   [4] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI ACUTE ACCENT
@@ -689,6 +750,7 @@
 1B44          ; Diacritic # Mc       BALINESE ADEG ADEG
 1B6B..1B73    ; Diacritic # Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
 1BAA          ; Diacritic # Mc       SUNDANESE SIGN PAMAAEH
+1BAB          ; Diacritic # Mn       SUNDANESE SIGN VIRAMA
 1C36..1C37    ; Diacritic # Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
 1C78..1C7D    ; Diacritic # Lm   [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD
 1CD0..1CD2    ; Diacritic # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
@@ -697,8 +759,8 @@
 1CE1          ; Diacritic # Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
 1CE2..1CE8    ; Diacritic # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
 1CED          ; Diacritic # Mn       VEDIC SIGN TIRYAK
-1D2C..1D61    ; Diacritic # Lm  [54] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL CHI
-1D62..1D6A    ; Diacritic # L&   [9] LATIN SUBSCRIPT SMALL LETTER I..GREEK SUBSCRIPT SMALL LETTER CHI
+1CF4          ; Diacritic # Mn       VEDIC TONE CANDRA ABOVE
+1D2C..1D6A    ; Diacritic # Lm  [63] MODIFIER LETTER CAPITAL A..GREEK SUBSCRIPT SMALL LETTER CHI
 1DC4..1DCF    ; Diacritic # Mn  [12] COMBINING MACRON-ACUTE..COMBINING ZIGZAG BELOW
 1DFD..1DFF    ; Diacritic # Mn   [3] COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 1FBD          ; Diacritic # Sk       GREEK KORONIS
@@ -709,7 +771,8 @@
 1FFD..1FFE    ; Diacritic # Sk   [2] GREEK OXIA..GREEK DASIA
 2CEF..2CF1    ; Diacritic # Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
 2E2F          ; Diacritic # Lm       VERTICAL TILDE
-302A..302F    ; Diacritic # Mn   [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK
+302A..302D    ; Diacritic # Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
+302E..302F    ; Diacritic # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 3099..309A    ; Diacritic # Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
 309B..309C    ; Diacritic # Sk   [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
 30FC          ; Diacritic # Lm       KATAKANA-HIRAGANA PROLONGED SOUND MARK
@@ -720,6 +783,7 @@
 A717..A71F    ; Diacritic # Lm   [9] MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOW INVERTED EXCLAMATION MARK
 A720..A721    ; Diacritic # Sk   [2] MODIFIER LETTER STRESS AND HIGH TONE..MODIFIER LETTER STRESS AND LOW TONE
 A788          ; Diacritic # Lm       MODIFIER LETTER LOW CIRCUMFLEX ACCENT
+A7F8..A7F9    ; Diacritic # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 A8C4          ; Diacritic # Mn       SAURASHTRA SIGN VIRAMA
 A8E0..A8F1    ; Diacritic # Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
 A92B..A92D    ; Diacritic # Mn   [3] KAYAH LI TONE PLOPHU..KAYAH LI TONE CALYA PLOPHU
@@ -732,6 +796,7 @@
 AAC0          ; Diacritic # Lo       TAI VIET TONE MAI NUENG
 AAC1          ; Diacritic # Mn       TAI VIET TONE MAI THO
 AAC2          ; Diacritic # Lo       TAI VIET TONE MAI SONG
+AAF6          ; Diacritic # Mn       MEETEI MAYEK VIRAMA
 ABEC          ; Diacritic # Mc       MEETEI MAYEK LUM IYEK
 ABED          ; Diacritic # Mn       MEETEI MAYEK APUN IYEK
 FB1E          ; Diacritic # Mn       HEBREW POINT JUDEO-SPANISH VARIKA
@@ -742,13 +807,19 @@
 FF9E..FF9F    ; Diacritic # Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
 FFE3          ; Diacritic # Sk       FULLWIDTH MACRON
 110B9..110BA  ; Diacritic # Mn   [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
+11133..11134  ; Diacritic # Mn   [2] CHAKMA VIRAMA..CHAKMA MAAYYAA
+111C0         ; Diacritic # Mc       SHARADA SIGN VIRAMA
+116B6         ; Diacritic # Mc       TAKRI SIGN VIRAMA
+116B7         ; Diacritic # Mn       TAKRI SIGN NUKTA
+16F8F..16F92  ; Diacritic # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
+16F93..16F9F  ; Diacritic # Lm  [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8
 1D167..1D169  ; Diacritic # Mn   [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
 1D16D..1D172  ; Diacritic # Mc   [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5
 1D17B..1D182  ; Diacritic # Mn   [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
 1D185..1D18B  ; Diacritic # Mn   [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
 1D1AA..1D1AD  ; Diacritic # Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
 
-# Total code points: 639
+# Total code points: 693
 
 # ================================================
 
@@ -758,6 +829,7 @@
 07FA          ; Extender # Lm       NKO LAJANYALAN
 0E46          ; Extender # Lm       THAI CHARACTER MAIYAMOK
 0EC6          ; Extender # Lm       LAO KO LA
+180A          ; Extender # Po       MONGOLIAN NIRUGU
 1843          ; Extender # Lm       MONGOLIAN LETTER TODO LONG VOWEL SIGN
 1AA7          ; Extender # Lm       TAI THAM SIGN MAI YAMOK
 1C36          ; Extender # Mn       LEPCHA SIGN RAN
@@ -771,27 +843,33 @@
 A9CF          ; Extender # Lm       JAVANESE PANGRANGKEP
 AA70          ; Extender # Lm       MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION
 AADD          ; Extender # Lm       TAI VIET SYMBOL SAM
+AAF3..AAF4    ; Extender # Lm   [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK
 FF70          ; Extender # Lm       HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
 
-# Total code points: 28
+# Total code points: 31
 
 # ================================================
 
+00AA          ; Other_Lowercase # Lo       FEMININE ORDINAL INDICATOR
+00BA          ; Other_Lowercase # Lo       MASCULINE ORDINAL INDICATOR
 02B0..02B8    ; Other_Lowercase # Lm   [9] MODIFIER LETTER SMALL H..MODIFIER LETTER SMALL Y
 02C0..02C1    ; Other_Lowercase # Lm   [2] MODIFIER LETTER GLOTTAL STOP..MODIFIER LETTER REVERSED GLOTTAL STOP
 02E0..02E4    ; Other_Lowercase # Lm   [5] MODIFIER LETTER SMALL GAMMA..MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
 0345          ; Other_Lowercase # Mn       COMBINING GREEK YPOGEGRAMMENI
 037A          ; Other_Lowercase # Lm       GREEK YPOGEGRAMMENI
-1D2C..1D61    ; Other_Lowercase # Lm  [54] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL CHI
+1D2C..1D6A    ; Other_Lowercase # Lm  [63] MODIFIER LETTER CAPITAL A..GREEK SUBSCRIPT SMALL LETTER CHI
 1D78          ; Other_Lowercase # Lm       MODIFIER LETTER CYRILLIC EN
 1D9B..1DBF    ; Other_Lowercase # Lm  [37] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA
-2090..2094    ; Other_Lowercase # Lm   [5] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA
+2071          ; Other_Lowercase # Lm       SUPERSCRIPT LATIN SMALL LETTER I
+207F          ; Other_Lowercase # Lm       SUPERSCRIPT LATIN SMALL LETTER N
+2090..209C    ; Other_Lowercase # Lm  [13] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER T
 2170..217F    ; Other_Lowercase # Nl  [16] SMALL ROMAN NUMERAL ONE..SMALL ROMAN NUMERAL ONE THOUSAND
 24D0..24E9    ; Other_Lowercase # So  [26] CIRCLED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z
-2C7D          ; Other_Lowercase # Lm       MODIFIER LETTER CAPITAL V
+2C7C..2C7D    ; Other_Lowercase # Lm   [2] LATIN SUBSCRIPT SMALL LETTER J..MODIFIER LETTER CAPITAL V
 A770          ; Other_Lowercase # Lm       MODIFIER LETTER US
+A7F8..A7F9    ; Other_Lowercase # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 
-# Total code points: 159
+# Total code points: 183
 
 # ================================================
 
@@ -838,11 +916,12 @@
 0DCF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN AELA-PILLA
 0DDF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN GAYANUKITTA
 200C..200D    ; Other_Grapheme_Extend # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
+302E..302F    ; Other_Grapheme_Extend # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 FF9E..FF9F    ; Other_Grapheme_Extend # Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
 1D165         ; Other_Grapheme_Extend # Mc       MUSICAL SYMBOL COMBINING STEM
 1D16E..1D172  ; Other_Grapheme_Extend # Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
 
-# Total code points: 23
+# Total code points: 25
 
 # ================================================
 
@@ -868,7 +947,7 @@
 # ================================================
 
 3400..4DB5    ; Unified_Ideograph # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Unified_Ideograph # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
+4E00..9FCC    ; Unified_Ideograph # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
 FA0E..FA0F    ; Unified_Ideograph # Lo   [2] CJK COMPATIBILITY IDEOGRAPH-FA0E..CJK COMPATIBILITY IDEOGRAPH-FA0F
 FA11          ; Unified_Ideograph # Lo       CJK COMPATIBILITY IDEOGRAPH-FA11
 FA13..FA14    ; Unified_Ideograph # Lo   [2] CJK COMPATIBILITY IDEOGRAPH-FA13..CJK COMPATIBILITY IDEOGRAPH-FA14
@@ -880,12 +959,13 @@
 2A700..2B734  ; Unified_Ideograph # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Unified_Ideograph # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 
-# Total code points: 74616
+# Total code points: 74617
 
 # ================================================
 
 034F          ; Other_Default_Ignorable_Code_Point # Mn       COMBINING GRAPHEME JOINER
 115F..1160    ; Other_Default_Ignorable_Code_Point # Lo   [2] HANGUL CHOSEONG FILLER..HANGUL JUNGSEONG FILLER
+17B4..17B5    ; Other_Default_Ignorable_Code_Point # Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
 2065..2069    ; Other_Default_Ignorable_Code_Point # Cn   [5] <reserved-2065>..<reserved-2069>
 3164          ; Other_Default_Ignorable_Code_Point # Lo       HANGUL FILLER
 FFA0          ; Other_Default_Ignorable_Code_Point # Lo       HALFWIDTH HANGUL FILLER
@@ -895,7 +975,7 @@
 E0080..E00FF  ; Other_Default_Ignorable_Code_Point # Cn [128] <reserved-E0080>..<reserved-E00FF>
 E01F0..E0FFF  ; Other_Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
 
-# Total code points: 3778
+# Total code points: 3780
 
 # ================================================
 
@@ -923,7 +1003,7 @@
 03F3          ; Soft_Dotted # L&       GREEK LETTER YOT
 0456          ; Soft_Dotted # L&       CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
 0458          ; Soft_Dotted # L&       CYRILLIC SMALL LETTER JE
-1D62          ; Soft_Dotted # L&       LATIN SUBSCRIPT SMALL LETTER I
+1D62          ; Soft_Dotted # Lm       LATIN SUBSCRIPT SMALL LETTER I
 1D96          ; Soft_Dotted # L&       LATIN SMALL LETTER I WITH RETROFLEX HOOK
 1DA4          ; Soft_Dotted # Lm       MODIFIER LETTER SMALL I WITH STROKE
 1DA8          ; Soft_Dotted # Lm       MODIFIER LETTER SMALL J WITH CROSSED-TAIL
@@ -931,7 +1011,7 @@
 1ECB          ; Soft_Dotted # L&       LATIN SMALL LETTER I WITH DOT BELOW
 2071          ; Soft_Dotted # Lm       SUPERSCRIPT LATIN SMALL LETTER I
 2148..2149    ; Soft_Dotted # L&   [2] DOUBLE-STRUCK ITALIC SMALL I..DOUBLE-STRUCK ITALIC SMALL J
-2C7C          ; Soft_Dotted # L&       LATIN SUBSCRIPT SMALL LETTER J
+2C7C          ; Soft_Dotted # Lm       LATIN SUBSCRIPT SMALL LETTER J
 1D422..1D423  ; Soft_Dotted # L&   [2] MATHEMATICAL BOLD SMALL I..MATHEMATICAL BOLD SMALL J
 1D456..1D457  ; Soft_Dotted # L&   [2] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL ITALIC SMALL J
 1D48A..1D48B  ; Soft_Dotted # L&   [2] MATHEMATICAL BOLD ITALIC SMALL I..MATHEMATICAL BOLD ITALIC SMALL J
@@ -1014,6 +1094,7 @@
 A92F          ; STerm # Po       KAYAH LI SIGN SHYA
 A9C8..A9C9    ; STerm # Po   [2] JAVANESE PADA LINGSA..JAVANESE PADA LUNGSI
 AA5D..AA5F    ; STerm # Po   [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
+AAF0..AAF1    ; STerm # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; STerm # Po       MEETEI MAYEK CHEIKHEI
 FE52          ; STerm # Po       SMALL FULL STOP
 FE56..FE57    ; STerm # Po   [2] SMALL QUESTION MARK..SMALL EXCLAMATION MARK
@@ -1024,8 +1105,10 @@
 10A56..10A57  ; STerm # Po   [2] KHAROSHTHI PUNCTUATION DANDA..KHAROSHTHI PUNCTUATION DOUBLE DANDA
 11047..11048  ; STerm # Po   [2] BRAHMI DANDA..BRAHMI DOUBLE DANDA
 110BE..110C1  ; STerm # Po   [4] KAITHI SECTION MARK..KAITHI DOUBLE DANDA
+11141..11143  ; STerm # Po   [3] CHAKMA DANDA..CHAKMA QUESTION MARK
+111C5..111C6  ; STerm # Po   [2] SHARADA DANDA..SHARADA DOUBLE DANDA
 
-# Total code points: 76
+# Total code points: 83
 
 # ================================================
 
@@ -1072,14 +1155,15 @@
 007E          ; Pattern_Syntax # Sm       TILDE
 00A1          ; Pattern_Syntax # Po       INVERTED EXCLAMATION MARK
 00A2..00A5    ; Pattern_Syntax # Sc   [4] CENT SIGN..YEN SIGN
-00A6..00A7    ; Pattern_Syntax # So   [2] BROKEN BAR..SECTION SIGN
+00A6          ; Pattern_Syntax # So       BROKEN BAR
+00A7          ; Pattern_Syntax # Po       SECTION SIGN
 00A9          ; Pattern_Syntax # So       COPYRIGHT SIGN
 00AB          ; Pattern_Syntax # Pi       LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
 00AC          ; Pattern_Syntax # Sm       NOT SIGN
 00AE          ; Pattern_Syntax # So       REGISTERED SIGN
 00B0          ; Pattern_Syntax # So       DEGREE SIGN
 00B1          ; Pattern_Syntax # Sm       PLUS-MINUS SIGN
-00B6          ; Pattern_Syntax # So       PILCROW SIGN
+00B6          ; Pattern_Syntax # Po       PILCROW SIGN
 00BB          ; Pattern_Syntax # Pf       RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
 00BF          ; Pattern_Syntax # Po       INVERTED QUESTION MARK
 00D7          ; Pattern_Syntax # Sm       MULTIPLICATION SIGN
@@ -1173,11 +1257,7 @@
 27C0..27C4    ; Pattern_Syntax # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
 27C5          ; Pattern_Syntax # Ps       LEFT S-SHAPED BAG DELIMITER
 27C6          ; Pattern_Syntax # Pe       RIGHT S-SHAPED BAG DELIMITER
-27C7..27CA    ; Pattern_Syntax # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
-27CB          ; Pattern_Syntax # Cn       <reserved-27CB>
-27CC          ; Pattern_Syntax # Sm       LONG DIVISION
-27CD          ; Pattern_Syntax # Cn       <reserved-27CD>
-27CE..27E5    ; Pattern_Syntax # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
+27C7..27E5    ; Pattern_Syntax # Sm  [31] OR WITH DOT INSIDE..WHITE SQUARE WITH RIGHTWARDS TICK
 27E6          ; Pattern_Syntax # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
 27E7          ; Pattern_Syntax # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
 27E8          ; Pattern_Syntax # Ps       MATHEMATICAL LEFT ANGLE BRACKET
@@ -1260,8 +1340,9 @@
 2E29          ; Pattern_Syntax # Pe       RIGHT DOUBLE PARENTHESIS
 2E2A..2E2E    ; Pattern_Syntax # Po   [5] TWO DOTS OVER ONE DOT PUNCTUATION..REVERSED QUESTION MARK
 2E2F          ; Pattern_Syntax # Lm       VERTICAL TILDE
-2E30..2E31    ; Pattern_Syntax # Po   [2] RING POINT..WORD SEPARATOR MIDDLE DOT
-2E32..2E7F    ; Pattern_Syntax # Cn  [78] <reserved-2E32>..<reserved-2E7F>
+2E30..2E39    ; Pattern_Syntax # Po  [10] RING POINT..TOP HALF SECTION SIGN
+2E3A..2E3B    ; Pattern_Syntax # Pd   [2] TWO-EM DASH..THREE-EM DASH
+2E3C..2E7F    ; Pattern_Syntax # Cn  [68] <reserved-2E3C>..<reserved-2E7F>
 3001..3003    ; Pattern_Syntax # Po   [3] IDEOGRAPHIC COMMA..DITTO MARK
 3008          ; Pattern_Syntax # Ps       LEFT ANGLE BRACKET
 3009          ; Pattern_Syntax # Pe       RIGHT ANGLE BRACKET
--- a/make/tools/UnicodeData/Scripts.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/UnicodeData/Scripts.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,8 +1,8 @@
-# Scripts-6.0.0.txt
-# Date: 2010-08-19, 00:48:47 GMT [MD]
+# Scripts-6.1.0.txt
+# Date: 2011-11-27, 05:10:50 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 
@@ -47,7 +47,8 @@
 00A0          ; Common # Zs       NO-BREAK SPACE
 00A1          ; Common # Po       INVERTED EXCLAMATION MARK
 00A2..00A5    ; Common # Sc   [4] CENT SIGN..YEN SIGN
-00A6..00A7    ; Common # So   [2] BROKEN BAR..SECTION SIGN
+00A6          ; Common # So       BROKEN BAR
+00A7          ; Common # Po       SECTION SIGN
 00A8          ; Common # Sk       DIAERESIS
 00A9          ; Common # So       COPYRIGHT SIGN
 00AB          ; Common # Pi       LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
@@ -60,8 +61,7 @@
 00B2..00B3    ; Common # No   [2] SUPERSCRIPT TWO..SUPERSCRIPT THREE
 00B4          ; Common # Sk       ACUTE ACCENT
 00B5          ; Common # L&       MICRO SIGN
-00B6          ; Common # So       PILCROW SIGN
-00B7          ; Common # Po       MIDDLE DOT
+00B6..00B7    ; Common # Po   [2] PILCROW SIGN..MIDDLE DOT
 00B8          ; Common # Sk       CEDILLA
 00B9          ; Common # No       SUPERSCRIPT ONE
 00BB          ; Common # Pf       RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
@@ -90,7 +90,6 @@
 0660..0669    ; Common # Nd  [10] ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE
 06DD          ; Common # Cf       ARABIC END OF AYAH
 0964..0965    ; Common # Po   [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
-0970          ; Common # Po       DEVANAGARI ABBREVIATION SIGN
 0E3F          ; Common # Sc       THAI CURRENCY SYMBOL BAHT
 0FD5..0FD8    ; Common # So   [4] RIGHT-FACING SVASTI SIGN..LEFT-FACING SVASTI SIGN WITH DOTS
 10FB          ; Common # Po       GEORGIAN PARAGRAPH SEPARATOR
@@ -102,7 +101,8 @@
 1CE1          ; Common # Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
 1CE9..1CEC    ; Common # Lo   [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL
 1CEE..1CF1    ; Common # Lo   [4] VEDIC SIGN HEXIFORM LONG ANUSVARA..VEDIC SIGN ANUSVARA UBHAYATO MUKHA
-1CF2          ; Common # Mc       VEDIC SIGN ARDHAVISARGA
+1CF2..1CF3    ; Common # Mc   [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
+1CF5..1CF6    ; Common # Lo   [2] VEDIC SIGN JIHVAMULIYA..VEDIC SIGN UPADHMANIYA
 2000..200A    ; Common # Zs  [11] EN QUAD..HAIR SPACE
 200B          ; Common # Cf       ZERO WIDTH SPACE
 200E..200F    ; Common # Cf   [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
@@ -247,9 +247,7 @@
 27C0..27C4    ; Common # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
 27C5          ; Common # Ps       LEFT S-SHAPED BAG DELIMITER
 27C6          ; Common # Pe       RIGHT S-SHAPED BAG DELIMITER
-27C7..27CA    ; Common # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
-27CC          ; Common # Sm       LONG DIVISION
-27CE..27E5    ; Common # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
+27C7..27E5    ; Common # Sm  [31] OR WITH DOT INSIDE..WHITE SQUARE WITH RIGHTWARDS TICK
 27E6          ; Common # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
 27E7          ; Common # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
 27E8          ; Common # Ps       MATHEMATICAL LEFT ANGLE BRACKET
@@ -329,7 +327,8 @@
 2E29          ; Common # Pe       RIGHT DOUBLE PARENTHESIS
 2E2A..2E2E    ; Common # Po   [5] TWO DOTS OVER ONE DOT PUNCTUATION..REVERSED QUESTION MARK
 2E2F          ; Common # Lm       VERTICAL TILDE
-2E30..2E31    ; Common # Po   [2] RING POINT..WORD SEPARATOR MIDDLE DOT
+2E30..2E39    ; Common # Po  [10] RING POINT..TOP HALF SECTION SIGN
+2E3A..2E3B    ; Common # Pd   [2] TWO-EM DASH..THREE-EM DASH
 2FF0..2FFB    ; Common # So  [12] IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
 3000          ; Common # Zs       IDEOGRAPHIC SPACE
 3001..3003    ; Common # Po   [3] IDEOGRAPHIC COMMA..DITTO MARK
@@ -373,7 +372,9 @@
 3196..319F    ; Common # So  [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK
 31C0..31E3    ; Common # So  [36] CJK STROKE T..CJK STROKE Q
 3220..3229    ; Common # No  [10] PARENTHESIZED IDEOGRAPH ONE..PARENTHESIZED IDEOGRAPH TEN
-322A..3250    ; Common # So  [39] PARENTHESIZED IDEOGRAPH MOON..PARTNERSHIP SIGN
+322A..3247    ; Common # So  [30] PARENTHESIZED IDEOGRAPH MOON..CIRCLED IDEOGRAPH KOTO
+3248..324F    ; Common # No   [8] CIRCLED NUMBER TEN ON BLACK SQUARE..CIRCLED NUMBER EIGHTY ON BLACK SQUARE
+3250          ; Common # So       PARTNERSHIP SIGN
 3251..325F    ; Common # No  [15] CIRCLED NUMBER TWENTY ONE..CIRCLED NUMBER THIRTY FIVE
 327F          ; Common # So       KOREAN STANDARD SYMBOL
 3280..3289    ; Common # No  [10] CIRCLED IDEOGRAPH ONE..CIRCLED IDEOGRAPH TEN
@@ -481,8 +482,7 @@
 FFED..FFEE    ; Common # So   [2] HALFWIDTH BLACK SQUARE..HALFWIDTH WHITE CIRCLE
 FFF9..FFFB    ; Common # Cf   [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
 FFFC..FFFD    ; Common # So   [2] OBJECT REPLACEMENT CHARACTER..REPLACEMENT CHARACTER
-10100..10101  ; Common # Po   [2] AEGEAN WORD SEPARATOR LINE..AEGEAN WORD SEPARATOR DOT
-10102         ; Common # So       AEGEAN CHECK MARK
+10100..10102  ; Common # Po   [3] AEGEAN WORD SEPARATOR LINE..AEGEAN CHECK MARK
 10107..10133  ; Common # No  [45] AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND
 10137..1013F  ; Common # So   [9] AEGEAN WEIGHT BASE UNIT..AEGEAN MEASURE THIRD SUBUNIT
 10190..1019B  ; Common # So  [12] ROMAN SEXTANS SIGN..ROMAN CENTURIAL SIGN
@@ -548,7 +548,7 @@
 1F0D1..1F0DF  ; Common # So  [15] PLAYING CARD ACE OF CLUBS..PLAYING CARD WHITE JOKER
 1F100..1F10A  ; Common # No  [11] DIGIT ZERO FULL STOP..DIGIT NINE COMMA
 1F110..1F12E  ; Common # So  [31] PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ
-1F130..1F169  ; Common # So  [58] SQUARED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
+1F130..1F16B  ; Common # So  [60] SQUARED LATIN CAPITAL LETTER A..RAISED MD SIGN
 1F170..1F19A  ; Common # So  [43] NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VS
 1F1E6..1F1FF  ; Common # So  [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
 1F201..1F202  ; Common # So   [2] SQUARED KATAKANA KOKO..SQUARED KATAKANA SA
@@ -567,33 +567,23 @@
 1F442..1F4F7  ; Common # So [182] EAR..CAMERA
 1F4F9..1F4FC  ; Common # So   [4] VIDEO CAMERA..VIDEOCASSETTE
 1F500..1F53D  ; Common # So  [62] TWISTED RIGHTWARDS ARROWS..DOWN-POINTING SMALL RED TRIANGLE
+1F540..1F543  ; Common # So   [4] CIRCLED CROSS POMMEE..NOTCHED LEFT SEMICIRCLE WITH THREE DOTS
 1F550..1F567  ; Common # So  [24] CLOCK FACE ONE OCLOCK..CLOCK FACE TWELVE-THIRTY
-1F5FB..1F5FF  ; Common # So   [5] MOUNT FUJI..MOYAI
-1F601..1F610  ; Common # So  [16] GRINNING FACE WITH SMILING EYES..NEUTRAL FACE
-1F612..1F614  ; Common # So   [3] UNAMUSED FACE..PENSIVE FACE
-1F616         ; Common # So       CONFOUNDED FACE
-1F618         ; Common # So       FACE THROWING A KISS
-1F61A         ; Common # So       KISSING FACE WITH CLOSED EYES
-1F61C..1F61E  ; Common # So   [3] FACE WITH STUCK-OUT TONGUE AND WINKING EYE..DISAPPOINTED FACE
-1F620..1F625  ; Common # So   [6] ANGRY FACE..DISAPPOINTED BUT RELIEVED FACE
-1F628..1F62B  ; Common # So   [4] FEARFUL FACE..TIRED FACE
-1F62D         ; Common # So       LOUDLY CRYING FACE
-1F630..1F633  ; Common # So   [4] FACE WITH OPEN MOUTH AND COLD SWEAT..FLUSHED FACE
-1F635..1F640  ; Common # So  [12] DIZZY FACE..WEARY CAT FACE
+1F5FB..1F640  ; Common # So  [70] MOUNT FUJI..WEARY CAT FACE
 1F645..1F64F  ; Common # So  [11] FACE WITH NO GOOD GESTURE..PERSON WITH FOLDED HANDS
 1F680..1F6C5  ; Common # So  [70] ROCKET..LEFT LUGGAGE
 1F700..1F773  ; Common # So [116] ALCHEMICAL SYMBOL FOR QUINTESSENCE..ALCHEMICAL SYMBOL FOR HALF OUNCE
 E0001         ; Common # Cf       LANGUAGE TAG
 E0020..E007F  ; Common # Cf  [96] TAG SPACE..CANCEL TAG
 
-# Total code points: 6379
+# Total code points: 6412
 
 # ================================================
 
 0041..005A    ; Latin # L&  [26] LATIN CAPITAL LETTER A..LATIN CAPITAL LETTER Z
 0061..007A    ; Latin # L&  [26] LATIN SMALL LETTER A..LATIN SMALL LETTER Z
-00AA          ; Latin # L&       FEMININE ORDINAL INDICATOR
-00BA          ; Latin # L&       MASCULINE ORDINAL INDICATOR
+00AA          ; Latin # Lo       FEMININE ORDINAL INDICATOR
+00BA          ; Latin # Lo       MASCULINE ORDINAL INDICATOR
 00C0..00D6    ; Latin # L&  [23] LATIN CAPITAL LETTER A WITH GRAVE..LATIN CAPITAL LETTER O WITH DIAERESIS
 00D8..00F6    ; Latin # L&  [31] LATIN CAPITAL LETTER O WITH STROKE..LATIN SMALL LETTER O WITH DIAERESIS
 00F8..01BA    ; Latin # L& [195] LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER EZH WITH TAIL
@@ -607,7 +597,7 @@
 02E0..02E4    ; Latin # Lm   [5] MODIFIER LETTER SMALL GAMMA..MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
 1D00..1D25    ; Latin # L&  [38] LATIN LETTER SMALL CAPITAL A..LATIN LETTER AIN
 1D2C..1D5C    ; Latin # Lm  [49] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL AIN
-1D62..1D65    ; Latin # L&   [4] LATIN SUBSCRIPT SMALL LETTER I..LATIN SUBSCRIPT SMALL LETTER V
+1D62..1D65    ; Latin # Lm   [4] LATIN SUBSCRIPT SMALL LETTER I..LATIN SUBSCRIPT SMALL LETTER V
 1D6B..1D77    ; Latin # L&  [13] LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G
 1D79..1D9A    ; Latin # L&  [34] LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK
 1D9B..1DBE    ; Latin # Lm  [36] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL EZH
@@ -621,22 +611,23 @@
 2160..2182    ; Latin # Nl  [35] ROMAN NUMERAL ONE..ROMAN NUMERAL TEN THOUSAND
 2183..2184    ; Latin # L&   [2] ROMAN NUMERAL REVERSED ONE HUNDRED..LATIN SMALL LETTER REVERSED C
 2185..2188    ; Latin # Nl   [4] ROMAN NUMERAL SIX LATE FORM..ROMAN NUMERAL ONE HUNDRED THOUSAND
-2C60..2C7C    ; Latin # L&  [29] LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN SUBSCRIPT SMALL LETTER J
-2C7D          ; Latin # Lm       MODIFIER LETTER CAPITAL V
+2C60..2C7B    ; Latin # L&  [28] LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN LETTER SMALL CAPITAL TURNED E
+2C7C..2C7D    ; Latin # Lm   [2] LATIN SUBSCRIPT SMALL LETTER J..MODIFIER LETTER CAPITAL V
 2C7E..2C7F    ; Latin # L&   [2] LATIN CAPITAL LETTER S WITH SWASH TAIL..LATIN CAPITAL LETTER Z WITH SWASH TAIL
 A722..A76F    ; Latin # L&  [78] LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN SMALL LETTER CON
 A770          ; Latin # Lm       MODIFIER LETTER US
 A771..A787    ; Latin # L&  [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T
 A78B..A78E    ; Latin # L&   [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
-A790..A791    ; Latin # L&   [2] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER N WITH DESCENDER
-A7A0..A7A9    ; Latin # L&  [10] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN SMALL LETTER S WITH OBLIQUE STROKE
+A790..A793    ; Latin # L&   [4] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER C WITH BAR
+A7A0..A7AA    ; Latin # L&  [11] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN CAPITAL LETTER H WITH HOOK
+A7F8..A7F9    ; Latin # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 A7FA          ; Latin # L&       LATIN LETTER SMALL CAPITAL TURNED M
 A7FB..A7FF    ; Latin # Lo   [5] LATIN EPIGRAPHIC LETTER REVERSED F..LATIN EPIGRAPHIC LETTER ARCHAIC M
 FB00..FB06    ; Latin # L&   [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST
 FF21..FF3A    ; Latin # L&  [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z
 FF41..FF5A    ; Latin # L&  [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN SMALL LETTER Z
 
-# Total code points: 1267
+# Total code points: 1272
 
 # ================================================
 
@@ -656,7 +647,7 @@
 03F7..03FF    ; Greek # L&   [9] GREEK CAPITAL LETTER SHO..GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL
 1D26..1D2A    ; Greek # L&   [5] GREEK LETTER SMALL CAPITAL GAMMA..GREEK LETTER SMALL CAPITAL PSI
 1D5D..1D61    ; Greek # Lm   [5] MODIFIER LETTER SMALL BETA..MODIFIER LETTER SMALL CHI
-1D66..1D6A    ; Greek # L&   [5] GREEK SUBSCRIPT SMALL LETTER BETA..GREEK SUBSCRIPT SMALL LETTER CHI
+1D66..1D6A    ; Greek # Lm   [5] GREEK SUBSCRIPT SMALL LETTER BETA..GREEK SUBSCRIPT SMALL LETTER CHI
 1DBF          ; Greek # Lm       MODIFIER LETTER SMALL THETA
 1F00..1F15    ; Greek # L&  [22] GREEK SMALL LETTER ALPHA WITH PSILI..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
 1F18..1F1D    ; Greek # L&   [6] GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
@@ -710,12 +701,13 @@
 A66F          ; Cyrillic # Mn       COMBINING CYRILLIC VZMET
 A670..A672    ; Cyrillic # Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
 A673          ; Cyrillic # Po       SLAVONIC ASTERISK
-A67C..A67D    ; Cyrillic # Mn   [2] COMBINING CYRILLIC KAVYKA..COMBINING CYRILLIC PAYEROK
+A674..A67D    ; Cyrillic # Mn  [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK
 A67E          ; Cyrillic # Po       CYRILLIC KAVYKA
 A67F          ; Cyrillic # Lm       CYRILLIC PAYEROK
 A680..A697    ; Cyrillic # L&  [24] CYRILLIC CAPITAL LETTER DWE..CYRILLIC SMALL LETTER SHWE
+A69F          ; Cyrillic # Mn       COMBINING CYRILLIC LETTER IOTIFIED E
 
-# Total code points: 408
+# Total code points: 417
 
 # ================================================
 
@@ -724,9 +716,10 @@
 055A..055F    ; Armenian # Po   [6] ARMENIAN APOSTROPHE..ARMENIAN ABBREVIATION MARK
 0561..0587    ; Armenian # L&  [39] ARMENIAN SMALL LETTER AYB..ARMENIAN SMALL LIGATURE ECH YIWN
 058A          ; Armenian # Pd       ARMENIAN HYPHEN
+058F          ; Armenian # Sc       ARMENIAN DRAM SIGN
 FB13..FB17    ; Armenian # L&   [5] ARMENIAN SMALL LIGATURE MEN NOW..ARMENIAN SMALL LIGATURE MEN XEH
 
-# Total code points: 90
+# Total code points: 91
 
 # ================================================
 
@@ -757,7 +750,7 @@
 
 # ================================================
 
-0600..0603    ; Arabic # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
+0600..0604    ; Arabic # Cf   [5] ARABIC NUMBER SIGN..ARABIC SIGN SAMVAT
 0606..0608    ; Arabic # Sm   [3] ARABIC-INDIC CUBE ROOT..ARABIC RAY
 0609..060A    ; Arabic # Po   [2] ARABIC-INDIC PER MILLE SIGN..ARABIC-INDIC PER TEN THOUSAND SIGN
 060B          ; Arabic # Sc       AFGHANI SIGN
@@ -786,6 +779,9 @@
 06FD..06FE    ; Arabic # So   [2] ARABIC SIGN SINDHI AMPERSAND..ARABIC SIGN SINDHI POSTPOSITION MEN
 06FF          ; Arabic # Lo       ARABIC LETTER HEH WITH INVERTED V
 0750..077F    ; Arabic # Lo  [48] ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS ABOVE
+08A0          ; Arabic # Lo       ARABIC LETTER BEH WITH SMALL V BELOW
+08A2..08AC    ; Arabic # Lo  [11] ARABIC LETTER JEEM WITH TWO DOTS ABOVE..ARABIC LETTER ROHINGYA YEH
+08E4..08FE    ; Arabic # Mn  [27] ARABIC CURLY FATHA..ARABIC DAMMA WITH DOT
 FB50..FBB1    ; Arabic # Lo  [98] ARABIC LETTER ALEF WASLA ISOLATED FORM..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
 FBB2..FBC1    ; Arabic # Sk  [16] ARABIC SYMBOL DOT ABOVE..ARABIC SYMBOL SMALL TAH BELOW
 FBD3..FD3D    ; Arabic # Lo [363] ARABIC LETTER NG ISOLATED FORM..ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
@@ -796,8 +792,42 @@
 FE70..FE74    ; Arabic # Lo   [5] ARABIC FATHATAN ISOLATED FORM..ARABIC KASRATAN ISOLATED FORM
 FE76..FEFC    ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
 10E60..10E7E  ; Arabic # No  [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
+1EE00..1EE03  ; Arabic # Lo   [4] ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL
+1EE05..1EE1F  ; Arabic # Lo  [27] ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF
+1EE21..1EE22  ; Arabic # Lo   [2] ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM
+1EE24         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL HEH
+1EE27         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL HAH
+1EE29..1EE32  ; Arabic # Lo  [10] ARABIC MATHEMATICAL INITIAL YEH..ARABIC MATHEMATICAL INITIAL QAF
+1EE34..1EE37  ; Arabic # Lo   [4] ARABIC MATHEMATICAL INITIAL SHEEN..ARABIC MATHEMATICAL INITIAL KHAH
+1EE39         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL DAD
+1EE3B         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL GHAIN
+1EE42         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED JEEM
+1EE47         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED HAH
+1EE49         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED YEH
+1EE4B         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED LAM
+1EE4D..1EE4F  ; Arabic # Lo   [3] ARABIC MATHEMATICAL TAILED NOON..ARABIC MATHEMATICAL TAILED AIN
+1EE51..1EE52  ; Arabic # Lo   [2] ARABIC MATHEMATICAL TAILED SAD..ARABIC MATHEMATICAL TAILED QAF
+1EE54         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED SHEEN
+1EE57         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED KHAH
+1EE59         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DAD
+1EE5B         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED GHAIN
+1EE5D         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DOTLESS NOON
+1EE5F         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DOTLESS QAF
+1EE61..1EE62  ; Arabic # Lo   [2] ARABIC MATHEMATICAL STRETCHED BEH..ARABIC MATHEMATICAL STRETCHED JEEM
+1EE64         ; Arabic # Lo       ARABIC MATHEMATICAL STRETCHED HEH
+1EE67..1EE6A  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED HAH..ARABIC MATHEMATICAL STRETCHED KAF
+1EE6C..1EE72  ; Arabic # Lo   [7] ARABIC MATHEMATICAL STRETCHED MEEM..ARABIC MATHEMATICAL STRETCHED QAF
+1EE74..1EE77  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED SHEEN..ARABIC MATHEMATICAL STRETCHED KHAH
+1EE79..1EE7C  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED DAD..ARABIC MATHEMATICAL STRETCHED DOTLESS BEH
+1EE7E         ; Arabic # Lo       ARABIC MATHEMATICAL STRETCHED DOTLESS FEH
+1EE80..1EE89  ; Arabic # Lo  [10] ARABIC MATHEMATICAL LOOPED ALEF..ARABIC MATHEMATICAL LOOPED YEH
+1EE8B..1EE9B  ; Arabic # Lo  [17] ARABIC MATHEMATICAL LOOPED LAM..ARABIC MATHEMATICAL LOOPED GHAIN
+1EEA1..1EEA3  ; Arabic # Lo   [3] ARABIC MATHEMATICAL DOUBLE-STRUCK BEH..ARABIC MATHEMATICAL DOUBLE-STRUCK DAL
+1EEA5..1EEA9  ; Arabic # Lo   [5] ARABIC MATHEMATICAL DOUBLE-STRUCK WAW..ARABIC MATHEMATICAL DOUBLE-STRUCK YEH
+1EEAB..1EEBB  ; Arabic # Lo  [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN
+1EEF0..1EEF1  ; Arabic # Sm   [2] ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL..ARABIC MATHEMATICAL OPERATOR HAH WITH DAL
 
-# Total code points: 1051
+# Total code points: 1234
 
 # ================================================
 
@@ -838,6 +868,7 @@
 0958..0961    ; Devanagari # Lo  [10] DEVANAGARI LETTER QA..DEVANAGARI LETTER VOCALIC LL
 0962..0963    ; Devanagari # Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
 0966..096F    ; Devanagari # Nd  [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE
+0970          ; Devanagari # Po       DEVANAGARI ABBREVIATION SIGN
 0971          ; Devanagari # Lm       DEVANAGARI SIGN HIGH SPACING DOT
 0972..0977    ; Devanagari # Lo   [6] DEVANAGARI LETTER CANDRA A..DEVANAGARI LETTER UUE
 0979..097F    ; Devanagari # Lo   [7] DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA
@@ -846,7 +877,7 @@
 A8F8..A8FA    ; Devanagari # Po   [3] DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET
 A8FB          ; Devanagari # Lo       DEVANAGARI HEADSTROKE
 
-# Total code points: 150
+# Total code points: 151
 
 # ================================================
 
@@ -927,9 +958,10 @@
 0AE0..0AE1    ; Gujarati # Lo   [2] GUJARATI LETTER VOCALIC RR..GUJARATI LETTER VOCALIC LL
 0AE2..0AE3    ; Gujarati # Mn   [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
 0AE6..0AEF    ; Gujarati # Nd  [10] GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE
+0AF0          ; Gujarati # Po       GUJARATI ABBREVIATION SIGN
 0AF1          ; Gujarati # Sc       GUJARATI RUPEE SIGN
 
-# Total code points: 83
+# Total code points: 84
 
 # ================================================
 
@@ -1119,16 +1151,18 @@
 0EC6          ; Lao # Lm       LAO KO LA
 0EC8..0ECD    ; Lao # Mn   [6] LAO TONE MAI EK..LAO NIGGAHITA
 0ED0..0ED9    ; Lao # Nd  [10] LAO DIGIT ZERO..LAO DIGIT NINE
-0EDC..0EDD    ; Lao # Lo   [2] LAO HO NO..LAO HO MO
+0EDC..0EDF    ; Lao # Lo   [4] LAO HO NO..LAO LETTER KHMU NYO
 
-# Total code points: 65
+# Total code points: 67
 
 # ================================================
 
 0F00          ; Tibetan # Lo       TIBETAN SYLLABLE OM
 0F01..0F03    ; Tibetan # So   [3] TIBETAN MARK GTER YIG MGO TRUNCATED A..TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA
 0F04..0F12    ; Tibetan # Po  [15] TIBETAN MARK INITIAL YIG MGO MDUN MA..TIBETAN MARK RGYA GRAM SHAD
-0F13..0F17    ; Tibetan # So   [5] TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
+0F13          ; Tibetan # So       TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN
+0F14          ; Tibetan # Po       TIBETAN MARK GTER TSHEG
+0F15..0F17    ; Tibetan # So   [3] TIBETAN LOGOTYPE SIGN CHAD RTAGS..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
 0F18..0F19    ; Tibetan # Mn   [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
 0F1A..0F1F    ; Tibetan # So   [6] TIBETAN SIGN RDEL DKAR GCIG..TIBETAN SIGN RDEL DKAR RDEL NAG
 0F20..0F29    ; Tibetan # Nd  [10] TIBETAN DIGIT ZERO..TIBETAN DIGIT NINE
@@ -1212,16 +1246,21 @@
 # ================================================
 
 10A0..10C5    ; Georgian # L&  [38] GEORGIAN CAPITAL LETTER AN..GEORGIAN CAPITAL LETTER HOE
+10C7          ; Georgian # L&       GEORGIAN CAPITAL LETTER YN
+10CD          ; Georgian # L&       GEORGIAN CAPITAL LETTER AEN
 10D0..10FA    ; Georgian # Lo  [43] GEORGIAN LETTER AN..GEORGIAN LETTER AIN
 10FC          ; Georgian # Lm       MODIFIER LETTER GEORGIAN NAR
+10FD..10FF    ; Georgian # Lo   [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN
 2D00..2D25    ; Georgian # L&  [38] GEORGIAN SMALL LETTER AN..GEORGIAN SMALL LETTER HOE
+2D27          ; Georgian # L&       GEORGIAN SMALL LETTER YN
+2D2D          ; Georgian # L&       GEORGIAN SMALL LETTER AEN
 
-# Total code points: 120
+# Total code points: 127
 
 # ================================================
 
 1100..11FF    ; Hangul # Lo [256] HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
-302E..302F    ; Hangul # Mn   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
+302E..302F    ; Hangul # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 3131..318E    ; Hangul # Lo  [94] HANGUL LETTER KIYEOK..HANGUL LETTER ARAEAE
 3200..321E    ; Hangul # So  [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
 3260..327E    ; Hangul # So  [31] CIRCLED HANGUL KIYEOK..CIRCLED HANGUL IEUNG U
@@ -1256,8 +1295,7 @@
 1312..1315    ; Ethiopic # Lo   [4] ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE
 1318..135A    ; Ethiopic # Lo  [67] ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA
 135D..135F    ; Ethiopic # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
-1360          ; Ethiopic # So       ETHIOPIC SECTION MARK
-1361..1368    ; Ethiopic # Po   [8] ETHIOPIC WORDSPACE..ETHIOPIC PARAGRAPH SEPARATOR
+1360..1368    ; Ethiopic # Po   [9] ETHIOPIC SECTION MARK..ETHIOPIC PARAGRAPH SEPARATOR
 1369..137C    ; Ethiopic # No  [20] ETHIOPIC DIGIT ONE..ETHIOPIC NUMBER TEN THOUSAND
 1380..138F    ; Ethiopic # Lo  [16] ETHIOPIC SYLLABLE SEBATBEIT MWA..ETHIOPIC SYLLABLE PWE
 1390..1399    ; Ethiopic # So  [10] ETHIOPIC TONAL MARK YIZET..ETHIOPIC TONAL MARK KURT
@@ -1313,7 +1351,7 @@
 # ================================================
 
 1780..17B3    ; Khmer # Lo  [52] KHMER LETTER KA..KHMER INDEPENDENT VOWEL QAU
-17B4..17B5    ; Khmer # Cf   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
+17B4..17B5    ; Khmer # Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
 17B6          ; Khmer # Mc       KHMER VOWEL SIGN AA
 17B7..17BD    ; Khmer # Mn   [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
 17BE..17C5    ; Khmer # Mc   [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
@@ -1393,16 +1431,15 @@
 3038..303A    ; Han # Nl   [3] HANGZHOU NUMERAL TEN..HANGZHOU NUMERAL THIRTY
 303B          ; Han # Lm       VERTICAL IDEOGRAPHIC ITERATION MARK
 3400..4DB5    ; Han # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Han # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
-F900..FA2D    ; Han # Lo [302] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA2D
-FA30..FA6D    ; Han # Lo  [62] CJK COMPATIBILITY IDEOGRAPH-FA30..CJK COMPATIBILITY IDEOGRAPH-FA6D
+4E00..9FCC    ; Han # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
+F900..FA6D    ; Han # Lo [366] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA6D
 FA70..FAD9    ; Han # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
 20000..2A6D6  ; Han # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
 2A700..2B734  ; Han # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Han # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 2F800..2FA1D  ; Han # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 75960
+# Total code points: 75963
 
 # ================================================
 
@@ -1447,6 +1484,7 @@
 1CD4..1CE0    ; Inherited # Mn  [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
 1CE2..1CE8    ; Inherited # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
 1CED          ; Inherited # Mn       VEDIC SIGN TIRYAK
+1CF4          ; Inherited # Mn       VEDIC TONE CANDRA ABOVE
 1DC0..1DE6    ; Inherited # Mn  [39] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
 1DFC..1DFF    ; Inherited # Mn   [4] COMBINING DOUBLE INVERTED BREVE BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 200C..200D    ; Inherited # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
@@ -1466,7 +1504,7 @@
 1D1AA..1D1AD  ; Inherited # Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
 E0100..E01EF  ; Inherited # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 
-# Total code points: 523
+# Total code points: 524
 
 # ================================================
 
@@ -1587,11 +1625,12 @@
 2CE5..2CEA    ; Coptic # So   [6] COPTIC SYMBOL MI RO..COPTIC SYMBOL SHIMA SIMA
 2CEB..2CEE    ; Coptic # L&   [4] COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI..COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA
 2CEF..2CF1    ; Coptic # Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
+2CF2..2CF3    ; Coptic # L&   [2] COPTIC CAPITAL LETTER BOHAIRIC KHEI..COPTIC SMALL LETTER BOHAIRIC KHEI
 2CF9..2CFC    ; Coptic # Po   [4] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN VERSE DIVIDER
 2CFD          ; Coptic # No       COPTIC FRACTION ONE HALF
 2CFE..2CFF    ; Coptic # Po   [2] COPTIC FULL STOP..COPTIC MORPHOLOGICAL DIVIDER
 
-# Total code points: 135
+# Total code points: 137
 
 # ================================================
 
@@ -1614,12 +1653,12 @@
 
 # ================================================
 
-2D30..2D65    ; Tifinagh # Lo  [54] TIFINAGH LETTER YA..TIFINAGH LETTER YAZZ
+2D30..2D67    ; Tifinagh # Lo  [56] TIFINAGH LETTER YA..TIFINAGH LETTER YO
 2D6F          ; Tifinagh # Lm       TIFINAGH MODIFIER LETTER LABIALIZATION MARK
 2D70          ; Tifinagh # Po       TIFINAGH SEPARATOR MARK
 2D7F          ; Tifinagh # Mn       TIFINAGH CONSONANT JOINER
 
-# Total code points: 57
+# Total code points: 59
 
 # ================================================
 
@@ -1729,10 +1768,14 @@
 1BA6..1BA7    ; Sundanese # Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
 1BA8..1BA9    ; Sundanese # Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
 1BAA          ; Sundanese # Mc       SUNDANESE SIGN PAMAAEH
+1BAB          ; Sundanese # Mn       SUNDANESE SIGN VIRAMA
+1BAC..1BAD    ; Sundanese # Mc   [2] SUNDANESE CONSONANT SIGN PASANGAN MA..SUNDANESE CONSONANT SIGN PASANGAN WA
 1BAE..1BAF    ; Sundanese # Lo   [2] SUNDANESE LETTER KHA..SUNDANESE LETTER SYA
 1BB0..1BB9    ; Sundanese # Nd  [10] SUNDANESE DIGIT ZERO..SUNDANESE DIGIT NINE
+1BBA..1BBF    ; Sundanese # Lo   [6] SUNDANESE AVAGRAHA..SUNDANESE LETTER FINAL M
+1CC0..1CC7    ; Sundanese # Po   [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA
 
-# Total code points: 55
+# Total code points: 72
 
 # ================================================
 
@@ -1940,6 +1983,15 @@
 
 # ================================================
 
+AAE0..AAEA    ; Meetei_Mayek # Lo  [11] MEETEI MAYEK LETTER E..MEETEI MAYEK LETTER SSA
+AAEB          ; Meetei_Mayek # Mc       MEETEI MAYEK VOWEL SIGN II
+AAEC..AAED    ; Meetei_Mayek # Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
+AAEE..AAEF    ; Meetei_Mayek # Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
+AAF0..AAF1    ; Meetei_Mayek # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
+AAF2          ; Meetei_Mayek # Lo       MEETEI MAYEK ANJI
+AAF3..AAF4    ; Meetei_Mayek # Lm   [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK
+AAF5          ; Meetei_Mayek # Mc       MEETEI MAYEK VOWEL SIGN VISARGA
+AAF6          ; Meetei_Mayek # Mn       MEETEI MAYEK VIRAMA
 ABC0..ABE2    ; Meetei_Mayek # Lo  [35] MEETEI MAYEK LETTER KOK..MEETEI MAYEK LETTER I LONSUM
 ABE3..ABE4    ; Meetei_Mayek # Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
 ABE5          ; Meetei_Mayek # Mn       MEETEI MAYEK VOWEL SIGN ANAP
@@ -1951,7 +2003,7 @@
 ABED          ; Meetei_Mayek # Mn       MEETEI MAYEK APUN IYEK
 ABF0..ABF9    ; Meetei_Mayek # Nd  [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DIGIT NINE
 
-# Total code points: 56
+# Total code points: 79
 
 # ================================================
 
@@ -2040,4 +2092,74 @@
 
 # Total code points: 29
 
+# ================================================
+
+11100..11102  ; Chakma # Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
+11103..11126  ; Chakma # Lo  [36] CHAKMA LETTER AA..CHAKMA LETTER HAA
+11127..1112B  ; Chakma # Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
+1112C         ; Chakma # Mc       CHAKMA VOWEL SIGN E
+1112D..11134  ; Chakma # Mn   [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA
+11136..1113F  ; Chakma # Nd  [10] CHAKMA DIGIT ZERO..CHAKMA DIGIT NINE
+11140..11143  ; Chakma # Po   [4] CHAKMA SECTION MARK..CHAKMA QUESTION MARK
+
+# Total code points: 67
+
+# ================================================
+
+109A0..109B7  ; Meroitic_Cursive # Lo  [24] MEROITIC CURSIVE LETTER A..MEROITIC CURSIVE LETTER DA
+109BE..109BF  ; Meroitic_Cursive # Lo   [2] MEROITIC CURSIVE LOGOGRAM RMT..MEROITIC CURSIVE LOGOGRAM IMN
+
+# Total code points: 26
+
+# ================================================
+
+10980..1099F  ; Meroitic_Hieroglyphs # Lo  [32] MEROITIC HIEROGLYPHIC LETTER A..MEROITIC HIEROGLYPHIC SYMBOL VIDJ-2
+
+# Total code points: 32
+
+# ================================================
+
+16F00..16F44  ; Miao # Lo  [69] MIAO LETTER PA..MIAO LETTER HHA
+16F50         ; Miao # Lo       MIAO LETTER NASALIZATION
+16F51..16F7E  ; Miao # Mc  [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
+16F8F..16F92  ; Miao # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
+16F93..16F9F  ; Miao # Lm  [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8
+
+# Total code points: 133
+
+# ================================================
+
+11180..11181  ; Sharada # Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
+11182         ; Sharada # Mc       SHARADA SIGN VISARGA
+11183..111B2  ; Sharada # Lo  [48] SHARADA LETTER A..SHARADA LETTER HA
+111B3..111B5  ; Sharada # Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
+111B6..111BE  ; Sharada # Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
+111BF..111C0  ; Sharada # Mc   [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
+111C1..111C4  ; Sharada # Lo   [4] SHARADA SIGN AVAGRAHA..SHARADA OM
+111C5..111C8  ; Sharada # Po   [4] SHARADA DANDA..SHARADA SEPARATOR
+111D0..111D9  ; Sharada # Nd  [10] SHARADA DIGIT ZERO..SHARADA DIGIT NINE
+
+# Total code points: 83
+
+# ================================================
+
+110D0..110E8  ; Sora_Sompeng # Lo  [25] SORA SOMPENG LETTER SAH..SORA SOMPENG LETTER MAE
+110F0..110F9  ; Sora_Sompeng # Nd  [10] SORA SOMPENG DIGIT ZERO..SORA SOMPENG DIGIT NINE
+
+# Total code points: 35
+
+# ================================================
+
+11680..116AA  ; Takri # Lo  [43] TAKRI LETTER A..TAKRI LETTER RRA
+116AB         ; Takri # Mn       TAKRI SIGN ANUSVARA
+116AC         ; Takri # Mc       TAKRI SIGN VISARGA
+116AD         ; Takri # Mn       TAKRI VOWEL SIGN AA
+116AE..116AF  ; Takri # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
+116B0..116B5  ; Takri # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
+116B6         ; Takri # Mc       TAKRI SIGN VIRAMA
+116B7         ; Takri # Mn       TAKRI SIGN NUKTA
+116C0..116C9  ; Takri # Nd  [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE
+
+# Total code points: 66
+
 # EOF
--- a/make/tools/UnicodeData/SpecialCasing.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/UnicodeData/SpecialCasing.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,8 +1,8 @@
-# SpecialCasing-6.0.0.txt
-# Date: 2010-05-18, 00:49:39 GMT [MD]
+# SpecialCasing-6.1.0.txt
+# Date: 2011-11-27, 05:10:51 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 #
@@ -47,7 +47,9 @@
 #  * Additional contexts
 #  * Additional fields
 # ================================================================================
-# @missing 0000..10FFFF; <slc>; <stc>; <suc>
+
+# @missing: 0000..10FFFF; <slc>; <stc>; <suc>;
+
 # ================================================================================
 # Unconditional mappings
 # ================================================================================
--- a/make/tools/UnicodeData/UnicodeData.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/UnicodeData/UnicodeData.txt	Tue May 08 07:34:53 2012 -0700
@@ -165,10 +165,10 @@
 00A4;CURRENCY SIGN;Sc;0;ET;;;;;N;;;;;
 00A5;YEN SIGN;Sc;0;ET;;;;;N;;;;;
 00A6;BROKEN BAR;So;0;ON;;;;;N;BROKEN VERTICAL BAR;;;;
-00A7;SECTION SIGN;So;0;ON;;;;;N;;;;;
+00A7;SECTION SIGN;Po;0;ON;;;;;N;;;;;
 00A8;DIAERESIS;Sk;0;ON;<compat> 0020 0308;;;;N;SPACING DIAERESIS;;;;
 00A9;COPYRIGHT SIGN;So;0;ON;;;;;N;;;;;
-00AA;FEMININE ORDINAL INDICATOR;Ll;0;L;<super> 0061;;;;N;;;;;
+00AA;FEMININE ORDINAL INDICATOR;Lo;0;L;<super> 0061;;;;N;;;;;
 00AB;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK;Pi;0;ON;;;;;Y;LEFT POINTING GUILLEMET;;;;
 00AC;NOT SIGN;Sm;0;ON;;;;;N;;;;;
 00AD;SOFT HYPHEN;Cf;0;BN;;;;;N;;;;;
@@ -180,11 +180,11 @@
 00B3;SUPERSCRIPT THREE;No;0;EN;<super> 0033;;3;3;N;SUPERSCRIPT DIGIT THREE;;;;
 00B4;ACUTE ACCENT;Sk;0;ON;<compat> 0020 0301;;;;N;SPACING ACUTE;;;;
 00B5;MICRO SIGN;Ll;0;L;<compat> 03BC;;;;N;;;039C;;039C
-00B6;PILCROW SIGN;So;0;ON;;;;;N;PARAGRAPH SIGN;;;;
+00B6;PILCROW SIGN;Po;0;ON;;;;;N;PARAGRAPH SIGN;;;;
 00B7;MIDDLE DOT;Po;0;ON;;;;;N;;;;;
 00B8;CEDILLA;Sk;0;ON;<compat> 0020 0327;;;;N;SPACING CEDILLA;;;;
 00B9;SUPERSCRIPT ONE;No;0;EN;<super> 0031;;1;1;N;SUPERSCRIPT DIGIT ONE;;;;
-00BA;MASCULINE ORDINAL INDICATOR;Ll;0;L;<super> 006F;;;;N;;;;;
+00BA;MASCULINE ORDINAL INDICATOR;Lo;0;L;<super> 006F;;;;N;;;;;
 00BB;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK;Pf;0;ON;;;;;Y;RIGHT POINTING GUILLEMET;;;;
 00BC;VULGAR FRACTION ONE QUARTER;No;0;ON;<fraction> 0031 2044 0034;;;1/4;N;FRACTION ONE QUARTER;;;;
 00BD;VULGAR FRACTION ONE HALF;No;0;ON;<fraction> 0031 2044 0032;;;1/2;N;FRACTION ONE HALF;;;;
@@ -612,7 +612,7 @@
 0263;LATIN SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0194;;0194
 0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;;;
 0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;A78D;;A78D
-0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;;;
+0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;A7AA;;A7AA
 0267;LATIN SMALL LETTER HENG WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER HENG HOOK;;;;
 0268;LATIN SMALL LETTER I WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED I;;0197;;0197
 0269;LATIN SMALL LETTER IOTA;Ll;0;L;;;;;N;;;0196;;0196
@@ -1394,6 +1394,7 @@
 0587;ARMENIAN SMALL LIGATURE ECH YIWN;Ll;0;L;<compat> 0565 0582;;;;N;;;;;
 0589;ARMENIAN FULL STOP;Po;0;L;;;;;N;ARMENIAN PERIOD;;;;
 058A;ARMENIAN HYPHEN;Pd;0;ON;;;;;N;;;;;
+058F;ARMENIAN DRAM SIGN;Sc;0;ET;;;;;N;;;;;
 0591;HEBREW ACCENT ETNAHTA;Mn;220;NSM;;;;;N;;;;;
 0592;HEBREW ACCENT SEGOL;Mn;230;NSM;;;;;N;;;;;
 0593;HEBREW ACCENT SHALSHELET;Mn;230;NSM;;;;;N;;;;;
@@ -1485,6 +1486,7 @@
 0601;ARABIC SIGN SANAH;Cf;0;AN;;;;;N;;;;;
 0602;ARABIC FOOTNOTE MARKER;Cf;0;AN;;;;;N;;;;;
 0603;ARABIC SIGN SAFHA;Cf;0;AN;;;;;N;;;;;
+0604;ARABIC SIGN SAMVAT;Cf;0;AN;;;;;N;;;;;
 0606;ARABIC-INDIC CUBE ROOT;Sm;0;ON;;;;;N;;;;;
 0607;ARABIC-INDIC FOURTH ROOT;Sm;0;ON;;;;;N;;;;;
 0608;ARABIC RAY;Sm;0;AL;;;;;N;;;;;
@@ -2057,6 +2059,45 @@
 085A;MANDAIC VOCALIZATION MARK;Mn;220;NSM;;;;;N;;;;;
 085B;MANDAIC GEMINATION MARK;Mn;220;NSM;;;;;N;;;;;
 085E;MANDAIC PUNCTUATION;Po;0;R;;;;;N;;;;;
+08A0;ARABIC LETTER BEH WITH SMALL V BELOW;Lo;0;AL;;;;;N;;;;;
+08A2;ARABIC LETTER JEEM WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;;
+08A3;ARABIC LETTER TAH WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;;
+08A4;ARABIC LETTER FEH WITH DOT BELOW AND THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;;
+08A5;ARABIC LETTER QAF WITH DOT BELOW;Lo;0;AL;;;;;N;;;;;
+08A6;ARABIC LETTER LAM WITH DOUBLE BAR;Lo;0;AL;;;;;N;;;;;
+08A7;ARABIC LETTER MEEM WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;;
+08A8;ARABIC LETTER YEH WITH TWO DOTS BELOW AND HAMZA ABOVE;Lo;0;AL;;;;;N;;;;;
+08A9;ARABIC LETTER YEH WITH TWO DOTS BELOW AND DOT ABOVE;Lo;0;AL;;;;;N;;;;;
+08AA;ARABIC LETTER REH WITH LOOP;Lo;0;AL;;;;;N;;;;;
+08AB;ARABIC LETTER WAW WITH DOT WITHIN;Lo;0;AL;;;;;N;;;;;
+08AC;ARABIC LETTER ROHINGYA YEH;Lo;0;AL;;;;;N;;;;;
+08E4;ARABIC CURLY FATHA;Mn;230;NSM;;;;;N;;;;;
+08E5;ARABIC CURLY DAMMA;Mn;230;NSM;;;;;N;;;;;
+08E6;ARABIC CURLY KASRA;Mn;220;NSM;;;;;N;;;;;
+08E7;ARABIC CURLY FATHATAN;Mn;230;NSM;;;;;N;;;;;
+08E8;ARABIC CURLY DAMMATAN;Mn;230;NSM;;;;;N;;;;;
+08E9;ARABIC CURLY KASRATAN;Mn;220;NSM;;;;;N;;;;;
+08EA;ARABIC TONE ONE DOT ABOVE;Mn;230;NSM;;;;;N;;;;;
+08EB;ARABIC TONE TWO DOTS ABOVE;Mn;230;NSM;;;;;N;;;;;
+08EC;ARABIC TONE LOOP ABOVE;Mn;230;NSM;;;;;N;;;;;
+08ED;ARABIC TONE ONE DOT BELOW;Mn;220;NSM;;;;;N;;;;;
+08EE;ARABIC TONE TWO DOTS BELOW;Mn;220;NSM;;;;;N;;;;;
+08EF;ARABIC TONE LOOP BELOW;Mn;220;NSM;;;;;N;;;;;
+08F0;ARABIC OPEN FATHATAN;Mn;27;NSM;;;;;N;;;;;
+08F1;ARABIC OPEN DAMMATAN;Mn;28;NSM;;;;;N;;;;;
+08F2;ARABIC OPEN KASRATAN;Mn;29;NSM;;;;;N;;;;;
+08F3;ARABIC SMALL HIGH WAW;Mn;230;NSM;;;;;N;;;;;
+08F4;ARABIC FATHA WITH RING;Mn;230;NSM;;;;;N;;;;;
+08F5;ARABIC FATHA WITH DOT ABOVE;Mn;230;NSM;;;;;N;;;;;
+08F6;ARABIC KASRA WITH DOT BELOW;Mn;220;NSM;;;;;N;;;;;
+08F7;ARABIC LEFT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;;
+08F8;ARABIC RIGHT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;;
+08F9;ARABIC LEFT ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;;
+08FA;ARABIC RIGHT ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;;
+08FB;ARABIC DOUBLE RIGHT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;;
+08FC;ARABIC DOUBLE RIGHT ARROWHEAD ABOVE WITH DOT;Mn;230;NSM;;;;;N;;;;;
+08FD;ARABIC RIGHT ARROWHEAD ABOVE WITH DOT;Mn;230;NSM;;;;;N;;;;;
+08FE;ARABIC DAMMA WITH DOT;Mn;230;NSM;;;;;N;;;;;
 0900;DEVANAGARI SIGN INVERTED CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
 0901;DEVANAGARI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
 0902;DEVANAGARI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
@@ -2437,6 +2478,7 @@
 0AED;GUJARATI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 0AEE;GUJARATI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 0AEF;GUJARATI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
+0AF0;GUJARATI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;;
 0AF1;GUJARATI RUPEE SIGN;Sc;0;ET;;;;;N;;;;;
 0B01;ORIYA SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
 0B02;ORIYA SIGN ANUSVARA;Mc;0;L;;;;;N;;;;;
@@ -3109,6 +3151,8 @@
 0ED9;LAO DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 0EDC;LAO HO NO;Lo;0;L;<compat> 0EAB 0E99;;;;N;;;;;
 0EDD;LAO HO MO;Lo;0;L;<compat> 0EAB 0EA1;;;;N;;;;;
+0EDE;LAO LETTER KHMU GO;Lo;0;L;;;;;N;;;;;
+0EDF;LAO LETTER KHMU NYO;Lo;0;L;;;;;N;;;;;
 0F00;TIBETAN SYLLABLE OM;Lo;0;L;;;;;N;;;;;
 0F01;TIBETAN MARK GTER YIG MGO TRUNCATED A;So;0;L;;;;;N;;;;;
 0F02;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA;So;0;L;;;;;N;;;;;
@@ -3129,7 +3173,7 @@
 0F11;TIBETAN MARK RIN CHEN SPUNGS SHAD;Po;0;L;;;;;N;TIBETAN RINCHANPHUNGSHAD;;;;
 0F12;TIBETAN MARK RGYA GRAM SHAD;Po;0;L;;;;;N;;;;;
 0F13;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN;So;0;L;;;;;N;;;;;
-0F14;TIBETAN MARK GTER TSHEG;So;0;L;;;;;N;TIBETAN COMMA;;;;
+0F14;TIBETAN MARK GTER TSHEG;Po;0;L;;;;;N;TIBETAN COMMA;;;;
 0F15;TIBETAN LOGOTYPE SIGN CHAD RTAGS;So;0;L;;;;;N;;;;;
 0F16;TIBETAN LOGOTYPE SIGN LHAG RTAGS;So;0;L;;;;;N;;;;;
 0F17;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS;So;0;L;;;;;N;;;;;
@@ -3518,6 +3562,8 @@
 10C3;GEORGIAN CAPITAL LETTER WE;Lu;0;L;;;;;N;;;;2D23;
 10C4;GEORGIAN CAPITAL LETTER HAR;Lu;0;L;;;;;N;;;;2D24;
 10C5;GEORGIAN CAPITAL LETTER HOE;Lu;0;L;;;;;N;;;;2D25;
+10C7;GEORGIAN CAPITAL LETTER YN;Lu;0;L;;;;;N;;;;2D27;
+10CD;GEORGIAN CAPITAL LETTER AEN;Lu;0;L;;;;;N;;;;2D2D;
 10D0;GEORGIAN LETTER AN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER AN;;;;
 10D1;GEORGIAN LETTER BAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER BAN;;;;
 10D2;GEORGIAN LETTER GAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER GAN;;;;
@@ -3563,6 +3609,9 @@
 10FA;GEORGIAN LETTER AIN;Lo;0;L;;;;;N;;;;;
 10FB;GEORGIAN PARAGRAPH SEPARATOR;Po;0;L;;;;;N;;;;;
 10FC;MODIFIER LETTER GEORGIAN NAR;Lm;0;L;<super> 10DC;;;;N;;;;;
+10FD;GEORGIAN LETTER AEN;Lo;0;L;;;;;N;;;;;
+10FE;GEORGIAN LETTER HARD SIGN;Lo;0;L;;;;;N;;;;;
+10FF;GEORGIAN LETTER LABIAL SIGN;Lo;0;L;;;;;N;;;;;
 1100;HANGUL CHOSEONG KIYEOK;Lo;0;L;;;;;N;;;;;
 1101;HANGUL CHOSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;;;;
 1102;HANGUL CHOSEONG NIEUN;Lo;0;L;;;;;N;;;;;
@@ -4148,7 +4197,7 @@
 135D;ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;;
 135E;ETHIOPIC COMBINING VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;;
 135F;ETHIOPIC COMBINING GEMINATION MARK;Mn;230;NSM;;;;;N;;;;;
-1360;ETHIOPIC SECTION MARK;So;0;L;;;;;N;;;;;
+1360;ETHIOPIC SECTION MARK;Po;0;L;;;;;N;;;;;
 1361;ETHIOPIC WORDSPACE;Po;0;L;;;;;N;;;;;
 1362;ETHIOPIC FULL STOP;Po;0;L;;;;;N;;;;;
 1363;ETHIOPIC COMMA;Po;0;L;;;;;N;;;;;
@@ -5171,8 +5220,8 @@
 17B1;KHMER INDEPENDENT VOWEL QOO TYPE ONE;Lo;0;L;;;;;N;;;;;
 17B2;KHMER INDEPENDENT VOWEL QOO TYPE TWO;Lo;0;L;;;;;N;;;;;
 17B3;KHMER INDEPENDENT VOWEL QAU;Lo;0;L;;;;;N;;;;;
-17B4;KHMER VOWEL INHERENT AQ;Cf;0;L;;;;;N;;;;;
-17B5;KHMER VOWEL INHERENT AA;Cf;0;L;;;;;N;;;;;
+17B4;KHMER VOWEL INHERENT AQ;Mn;0;NSM;;;;;N;;;;;
+17B5;KHMER VOWEL INHERENT AA;Mn;0;NSM;;;;;N;;;;;
 17B6;KHMER VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
 17B7;KHMER VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
 17B8;KHMER VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
@@ -5996,6 +6045,9 @@
 1BA8;SUNDANESE VOWEL SIGN PAMEPET;Mn;0;NSM;;;;;N;;;;;
 1BA9;SUNDANESE VOWEL SIGN PANEULEUNG;Mn;0;NSM;;;;;N;;;;;
 1BAA;SUNDANESE SIGN PAMAAEH;Mc;9;L;;;;;N;;;;;
+1BAB;SUNDANESE SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;;
+1BAC;SUNDANESE CONSONANT SIGN PASANGAN MA;Mc;0;L;;;;;N;;;;;
+1BAD;SUNDANESE CONSONANT SIGN PASANGAN WA;Mc;0;L;;;;;N;;;;;
 1BAE;SUNDANESE LETTER KHA;Lo;0;L;;;;;N;;;;;
 1BAF;SUNDANESE LETTER SYA;Lo;0;L;;;;;N;;;;;
 1BB0;SUNDANESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
@@ -6008,6 +6060,12 @@
 1BB7;SUNDANESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 1BB8;SUNDANESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 1BB9;SUNDANESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
+1BBA;SUNDANESE AVAGRAHA;Lo;0;L;;;;;N;;;;;
+1BBB;SUNDANESE LETTER REU;Lo;0;L;;;;;N;;;;;
+1BBC;SUNDANESE LETTER LEU;Lo;0;L;;;;;N;;;;;
+1BBD;SUNDANESE LETTER BHA;Lo;0;L;;;;;N;;;;;
+1BBE;SUNDANESE LETTER FINAL K;Lo;0;L;;;;;N;;;;;
+1BBF;SUNDANESE LETTER FINAL M;Lo;0;L;;;;;N;;;;;
 1BC0;BATAK LETTER A;Lo;0;L;;;;;N;;;;;
 1BC1;BATAK LETTER SIMALUNGUN A;Lo;0;L;;;;;N;;;;;
 1BC2;BATAK LETTER HA;Lo;0;L;;;;;N;;;;;
@@ -6186,6 +6244,14 @@
 1C7D;OL CHIKI AHAD;Lm;0;L;;;;;N;;;;;
 1C7E;OL CHIKI PUNCTUATION MUCAAD;Po;0;L;;;;;N;;;;;
 1C7F;OL CHIKI PUNCTUATION DOUBLE MUCAAD;Po;0;L;;;;;N;;;;;
+1CC0;SUNDANESE PUNCTUATION BINDU SURYA;Po;0;L;;;;;N;;;;;
+1CC1;SUNDANESE PUNCTUATION BINDU PANGLONG;Po;0;L;;;;;N;;;;;
+1CC2;SUNDANESE PUNCTUATION BINDU PURNAMA;Po;0;L;;;;;N;;;;;
+1CC3;SUNDANESE PUNCTUATION BINDU CAKRA;Po;0;L;;;;;N;;;;;
+1CC4;SUNDANESE PUNCTUATION BINDU LEU SATANGA;Po;0;L;;;;;N;;;;;
+1CC5;SUNDANESE PUNCTUATION BINDU KA SATANGA;Po;0;L;;;;;N;;;;;
+1CC6;SUNDANESE PUNCTUATION BINDU DA SATANGA;Po;0;L;;;;;N;;;;;
+1CC7;SUNDANESE PUNCTUATION BINDU BA SATANGA;Po;0;L;;;;;N;;;;;
 1CD0;VEDIC TONE KARSHANA;Mn;230;NSM;;;;;N;;;;;
 1CD1;VEDIC TONE SHARA;Mn;230;NSM;;;;;N;;;;;
 1CD2;VEDIC TONE PRENKHA;Mn;230;NSM;;;;;N;;;;;
@@ -6221,6 +6287,10 @@
 1CF0;VEDIC SIGN RTHANG LONG ANUSVARA;Lo;0;L;;;;;N;;;;;
 1CF1;VEDIC SIGN ANUSVARA UBHAYATO MUKHA;Lo;0;L;;;;;N;;;;;
 1CF2;VEDIC SIGN ARDHAVISARGA;Mc;0;L;;;;;N;;;;;
+1CF3;VEDIC SIGN ROTATED ARDHAVISARGA;Mc;0;L;;;;;N;;;;;
+1CF4;VEDIC TONE CANDRA ABOVE;Mn;230;NSM;;;;;N;;;;;
+1CF5;VEDIC SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;;
+1CF6;VEDIC SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;;
 1D00;LATIN LETTER SMALL CAPITAL A;Ll;0;L;;;;;N;;;;;
 1D01;LATIN LETTER SMALL CAPITAL AE;Ll;0;L;;;;;N;;;;;
 1D02;LATIN SMALL LETTER TURNED AE;Ll;0;L;;;;;N;;;;;
@@ -6319,15 +6389,15 @@
 1D5F;MODIFIER LETTER SMALL DELTA;Lm;0;L;<super> 03B4;;;;N;;;;;
 1D60;MODIFIER LETTER SMALL GREEK PHI;Lm;0;L;<super> 03C6;;;;N;;;;;
 1D61;MODIFIER LETTER SMALL CHI;Lm;0;L;<super> 03C7;;;;N;;;;;
-1D62;LATIN SUBSCRIPT SMALL LETTER I;Ll;0;L;<sub> 0069;;;;N;;;;;
-1D63;LATIN SUBSCRIPT SMALL LETTER R;Ll;0;L;<sub> 0072;;;;N;;;;;
-1D64;LATIN SUBSCRIPT SMALL LETTER U;Ll;0;L;<sub> 0075;;;;N;;;;;
-1D65;LATIN SUBSCRIPT SMALL LETTER V;Ll;0;L;<sub> 0076;;;;N;;;;;
-1D66;GREEK SUBSCRIPT SMALL LETTER BETA;Ll;0;L;<sub> 03B2;;;;N;;;;;
-1D67;GREEK SUBSCRIPT SMALL LETTER GAMMA;Ll;0;L;<sub> 03B3;;;;N;;;;;
-1D68;GREEK SUBSCRIPT SMALL LETTER RHO;Ll;0;L;<sub> 03C1;;;;N;;;;;
-1D69;GREEK SUBSCRIPT SMALL LETTER PHI;Ll;0;L;<sub> 03C6;;;;N;;;;;
-1D6A;GREEK SUBSCRIPT SMALL LETTER CHI;Ll;0;L;<sub> 03C7;;;;N;;;;;
+1D62;LATIN SUBSCRIPT SMALL LETTER I;Lm;0;L;<sub> 0069;;;;N;;;;;
+1D63;LATIN SUBSCRIPT SMALL LETTER R;Lm;0;L;<sub> 0072;;;;N;;;;;
+1D64;LATIN SUBSCRIPT SMALL LETTER U;Lm;0;L;<sub> 0075;;;;N;;;;;
+1D65;LATIN SUBSCRIPT SMALL LETTER V;Lm;0;L;<sub> 0076;;;;N;;;;;
+1D66;GREEK SUBSCRIPT SMALL LETTER BETA;Lm;0;L;<sub> 03B2;;;;N;;;;;
+1D67;GREEK SUBSCRIPT SMALL LETTER GAMMA;Lm;0;L;<sub> 03B3;;;;N;;;;;
+1D68;GREEK SUBSCRIPT SMALL LETTER RHO;Lm;0;L;<sub> 03C1;;;;N;;;;;
+1D69;GREEK SUBSCRIPT SMALL LETTER PHI;Lm;0;L;<sub> 03C6;;;;N;;;;;
+1D6A;GREEK SUBSCRIPT SMALL LETTER CHI;Lm;0;L;<sub> 03C7;;;;N;;;;;
 1D6B;LATIN SMALL LETTER UE;Ll;0;L;;;;;N;;;;;
 1D6C;LATIN SMALL LETTER B WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;;
 1D6D;LATIN SMALL LETTER D WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;;
@@ -8827,7 +8897,9 @@
 27C8;REVERSE SOLIDUS PRECEDING SUBSET;Sm;0;ON;;;;;Y;;;;;
 27C9;SUPERSET PRECEDING SOLIDUS;Sm;0;ON;;;;;Y;;;;;
 27CA;VERTICAL BAR WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;;
+27CB;MATHEMATICAL RISING DIAGONAL;Sm;0;ON;;;;;Y;;;;;
 27CC;LONG DIVISION;Sm;0;ON;;;;;Y;;;;;
+27CD;MATHEMATICAL FALLING DIAGONAL;Sm;0;ON;;;;;Y;;;;;
 27CE;SQUARED LOGICAL AND;Sm;0;ON;;;;;N;;;;;
 27CF;SQUARED LOGICAL OR;Sm;0;ON;;;;;N;;;;;
 27D0;WHITE DIAMOND WITH CENTRED DOT;Sm;0;ON;;;;;N;;;;;
@@ -9855,7 +9927,7 @@
 2C79;LATIN SMALL LETTER TURNED R WITH TAIL;Ll;0;L;;;;;N;;;;;
 2C7A;LATIN SMALL LETTER O WITH LOW RING INSIDE;Ll;0;L;;;;;N;;;;;
 2C7B;LATIN LETTER SMALL CAPITAL TURNED E;Ll;0;L;;;;;N;;;;;
-2C7C;LATIN SUBSCRIPT SMALL LETTER J;Ll;0;L;<sub> 006A;;;;N;;;;;
+2C7C;LATIN SUBSCRIPT SMALL LETTER J;Lm;0;L;<sub> 006A;;;;N;;;;;
 2C7D;MODIFIER LETTER CAPITAL V;Lm;0;L;<super> 0056;;;;N;;;;;
 2C7E;LATIN CAPITAL LETTER S WITH SWASH TAIL;Lu;0;L;;;;;N;;;;023F;
 2C7F;LATIN CAPITAL LETTER Z WITH SWASH TAIL;Lu;0;L;;;;;N;;;;0240;
@@ -9973,6 +10045,8 @@
 2CEF;COPTIC COMBINING NI ABOVE;Mn;230;NSM;;;;;N;;;;;
 2CF0;COPTIC COMBINING SPIRITUS ASPER;Mn;230;NSM;;;;;N;;;;;
 2CF1;COPTIC COMBINING SPIRITUS LENIS;Mn;230;NSM;;;;;N;;;;;
+2CF2;COPTIC CAPITAL LETTER BOHAIRIC KHEI;Lu;0;L;;;;;N;;;;2CF3;
+2CF3;COPTIC SMALL LETTER BOHAIRIC KHEI;Ll;0;L;;;;;N;;;2CF2;;2CF2
 2CF9;COPTIC OLD NUBIAN FULL STOP;Po;0;ON;;;;;N;;;;;
 2CFA;COPTIC OLD NUBIAN DIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;;
 2CFB;COPTIC OLD NUBIAN INDIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;;
@@ -10018,6 +10092,8 @@
 2D23;GEORGIAN SMALL LETTER WE;Ll;0;L;;;;;N;;;10C3;;10C3
 2D24;GEORGIAN SMALL LETTER HAR;Ll;0;L;;;;;N;;;10C4;;10C4
 2D25;GEORGIAN SMALL LETTER HOE;Ll;0;L;;;;;N;;;10C5;;10C5
+2D27;GEORGIAN SMALL LETTER YN;Ll;0;L;;;;;N;;;10C7;;10C7
+2D2D;GEORGIAN SMALL LETTER AEN;Ll;0;L;;;;;N;;;10CD;;10CD
 2D30;TIFINAGH LETTER YA;Lo;0;L;;;;;N;;;;;
 2D31;TIFINAGH LETTER YAB;Lo;0;L;;;;;N;;;;;
 2D32;TIFINAGH LETTER YABH;Lo;0;L;;;;;N;;;;;
@@ -10072,6 +10148,8 @@
 2D63;TIFINAGH LETTER YAZ;Lo;0;L;;;;;N;;;;;
 2D64;TIFINAGH LETTER TAWELLEMET YAZ;Lo;0;L;;;;;N;;;;;
 2D65;TIFINAGH LETTER YAZZ;Lo;0;L;;;;;N;;;;;
+2D66;TIFINAGH LETTER YE;Lo;0;L;;;;;N;;;;;
+2D67;TIFINAGH LETTER YO;Lo;0;L;;;;;N;;;;;
 2D6F;TIFINAGH MODIFIER LETTER LABIALIZATION MARK;Lm;0;L;<super> 2D61;;;;N;;;;;
 2D70;TIFINAGH SEPARATOR MARK;Po;0;L;;;;;N;;;;;
 2D7F;TIFINAGH CONSONANT JOINER;Mn;9;NSM;;;;;N;;;;;
@@ -10236,6 +10314,16 @@
 2E2F;VERTICAL TILDE;Lm;0;ON;;;;;N;;;;;
 2E30;RING POINT;Po;0;ON;;;;;N;;;;;
 2E31;WORD SEPARATOR MIDDLE DOT;Po;0;ON;;;;;N;;;;;
+2E32;TURNED COMMA;Po;0;ON;;;;;N;;;;;
+2E33;RAISED DOT;Po;0;ON;;;;;N;;;;;
+2E34;RAISED COMMA;Po;0;ON;;;;;N;;;;;
+2E35;TURNED SEMICOLON;Po;0;ON;;;;;N;;;;;
+2E36;DAGGER WITH LEFT GUARD;Po;0;ON;;;;;N;;;;;
+2E37;DAGGER WITH RIGHT GUARD;Po;0;ON;;;;;N;;;;;
+2E38;TURNED DAGGER;Po;0;ON;;;;;N;;;;;
+2E39;TOP HALF SECTION SIGN;Po;0;ON;;;;;N;;;;;
+2E3A;TWO-EM DASH;Pd;0;ON;;;;;N;;;;;
+2E3B;THREE-EM DASH;Pd;0;ON;;;;;N;;;;;
 2E80;CJK RADICAL REPEAT;So;0;ON;;;;;N;;;;;
 2E81;CJK RADICAL CLIFF;So;0;ON;;;;;N;;;;;
 2E82;CJK RADICAL SECOND ONE;So;0;ON;;;;;N;;;;;
@@ -10623,8 +10711,8 @@
 302B;IDEOGRAPHIC RISING TONE MARK;Mn;228;NSM;;;;;N;;;;;
 302C;IDEOGRAPHIC DEPARTING TONE MARK;Mn;232;NSM;;;;;N;;;;;
 302D;IDEOGRAPHIC ENTERING TONE MARK;Mn;222;NSM;;;;;N;;;;;
-302E;HANGUL SINGLE DOT TONE MARK;Mn;224;NSM;;;;;N;;;;;
-302F;HANGUL DOUBLE DOT TONE MARK;Mn;224;NSM;;;;;N;;;;;
+302E;HANGUL SINGLE DOT TONE MARK;Mc;224;L;;;;;N;;;;;
+302F;HANGUL DOUBLE DOT TONE MARK;Mc;224;L;;;;;N;;;;;
 3030;WAVY DASH;Pd;0;ON;;;;;N;;;;;
 3031;VERTICAL KANA REPEAT MARK;Lm;0;L;;;;;N;;;;;
 3032;VERTICAL KANA REPEAT WITH VOICED SOUND MARK;Lm;0;L;;;;;N;;;;;
@@ -11131,14 +11219,14 @@
 3245;CIRCLED IDEOGRAPH KINDERGARTEN;So;0;L;<circle> 5E7C;;;;N;;;;;
 3246;CIRCLED IDEOGRAPH SCHOOL;So;0;L;<circle> 6587;;;;N;;;;;
 3247;CIRCLED IDEOGRAPH KOTO;So;0;L;<circle> 7B8F;;;;N;;;;;
-3248;CIRCLED NUMBER TEN ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-3249;CIRCLED NUMBER TWENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324A;CIRCLED NUMBER THIRTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324B;CIRCLED NUMBER FORTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324C;CIRCLED NUMBER FIFTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324D;CIRCLED NUMBER SIXTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324E;CIRCLED NUMBER SEVENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
-324F;CIRCLED NUMBER EIGHTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
+3248;CIRCLED NUMBER TEN ON BLACK SQUARE;No;0;L;;;;10;N;;;;;
+3249;CIRCLED NUMBER TWENTY ON BLACK SQUARE;No;0;L;;;;20;N;;;;;
+324A;CIRCLED NUMBER THIRTY ON BLACK SQUARE;No;0;L;;;;30;N;;;;;
+324B;CIRCLED NUMBER FORTY ON BLACK SQUARE;No;0;L;;;;40;N;;;;;
+324C;CIRCLED NUMBER FIFTY ON BLACK SQUARE;No;0;L;;;;50;N;;;;;
+324D;CIRCLED NUMBER SIXTY ON BLACK SQUARE;No;0;L;;;;60;N;;;;;
+324E;CIRCLED NUMBER SEVENTY ON BLACK SQUARE;No;0;L;;;;70;N;;;;;
+324F;CIRCLED NUMBER EIGHTY ON BLACK SQUARE;No;0;L;;;;80;N;;;;;
 3250;PARTNERSHIP SIGN;So;0;ON;<square> 0050 0054 0045;;;;N;;;;;
 3251;CIRCLED NUMBER TWENTY ONE;No;0;ON;<circle> 0032 0031;;;21;N;;;;;
 3252;CIRCLED NUMBER TWENTY TWO;No;0;ON;<circle> 0032 0032;;;22;N;;;;;
@@ -11637,7 +11725,7 @@
 4DFE;HEXAGRAM FOR AFTER COMPLETION;So;0;ON;;;;;N;;;;;
 4DFF;HEXAGRAM FOR BEFORE COMPLETION;So;0;ON;;;;;N;;;;;
 4E00;<CJK Ideograph, First>;Lo;0;L;;;;;N;;;;;
-9FCB;<CJK Ideograph, Last>;Lo;0;L;;;;;N;;;;;
+9FCC;<CJK Ideograph, Last>;Lo;0;L;;;;;N;;;;;
 A000;YI SYLLABLE IT;Lo;0;L;;;;;N;;;;;
 A001;YI SYLLABLE IX;Lo;0;L;;;;;N;;;;;
 A002;YI SYLLABLE I;Lo;0;L;;;;;N;;;;;
@@ -13258,6 +13346,14 @@
 A671;COMBINING CYRILLIC HUNDRED MILLIONS SIGN;Me;0;NSM;;;;;N;;;;;
 A672;COMBINING CYRILLIC THOUSAND MILLIONS SIGN;Me;0;NSM;;;;;N;;;;;
 A673;SLAVONIC ASTERISK;Po;0;ON;;;;;N;;;;;
+A674;COMBINING CYRILLIC LETTER UKRAINIAN IE;Mn;230;NSM;;;;;N;;;;;
+A675;COMBINING CYRILLIC LETTER I;Mn;230;NSM;;;;;N;;;;;
+A676;COMBINING CYRILLIC LETTER YI;Mn;230;NSM;;;;;N;;;;;
+A677;COMBINING CYRILLIC LETTER U;Mn;230;NSM;;;;;N;;;;;
+A678;COMBINING CYRILLIC LETTER HARD SIGN;Mn;230;NSM;;;;;N;;;;;
+A679;COMBINING CYRILLIC LETTER YERU;Mn;230;NSM;;;;;N;;;;;
+A67A;COMBINING CYRILLIC LETTER SOFT SIGN;Mn;230;NSM;;;;;N;;;;;
+A67B;COMBINING CYRILLIC LETTER OMEGA;Mn;230;NSM;;;;;N;;;;;
 A67C;COMBINING CYRILLIC KAVYKA;Mn;230;NSM;;;;;N;;;;;
 A67D;COMBINING CYRILLIC PAYEROK;Mn;230;NSM;;;;;N;;;;;
 A67E;CYRILLIC KAVYKA;Po;0;ON;;;;;N;;;;;
@@ -13286,6 +13382,7 @@
 A695;CYRILLIC SMALL LETTER HWE;Ll;0;L;;;;;N;;;A694;;A694
 A696;CYRILLIC CAPITAL LETTER SHWE;Lu;0;L;;;;;N;;;;A697;
 A697;CYRILLIC SMALL LETTER SHWE;Ll;0;L;;;;;N;;;A696;;A696
+A69F;COMBINING CYRILLIC LETTER IOTIFIED E;Mn;230;NSM;;;;;N;;;;;
 A6A0;BAMUM LETTER A;Lo;0;L;;;;;N;;;;;
 A6A1;BAMUM LETTER KA;Lo;0;L;;;;;N;;;;;
 A6A2;BAMUM LETTER U;Lo;0;L;;;;;N;;;;;
@@ -13519,6 +13616,8 @@
 A78E;LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT;Ll;0;L;;;;;N;;;;;
 A790;LATIN CAPITAL LETTER N WITH DESCENDER;Lu;0;L;;;;;N;;;;A791;
 A791;LATIN SMALL LETTER N WITH DESCENDER;Ll;0;L;;;;;N;;;A790;;A790
+A792;LATIN CAPITAL LETTER C WITH BAR;Lu;0;L;;;;;N;;;;A793;
+A793;LATIN SMALL LETTER C WITH BAR;Ll;0;L;;;;;N;;;A792;;A792
 A7A0;LATIN CAPITAL LETTER G WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A1;
 A7A1;LATIN SMALL LETTER G WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A0;;A7A0
 A7A2;LATIN CAPITAL LETTER K WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A3;
@@ -13529,6 +13628,9 @@
 A7A7;LATIN SMALL LETTER R WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A6;;A7A6
 A7A8;LATIN CAPITAL LETTER S WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A9;
 A7A9;LATIN SMALL LETTER S WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A8;;A7A8
+A7AA;LATIN CAPITAL LETTER H WITH HOOK;Lu;0;L;;;;;N;;;;0266;
+A7F8;MODIFIER LETTER CAPITAL H WITH STROKE;Lm;0;L;<super> 0126;;;;N;;;;;
+A7F9;MODIFIER LETTER SMALL LIGATURE OE;Lm;0;L;<super> 0153;;;;N;;;;;
 A7FA;LATIN LETTER SMALL CAPITAL TURNED M;Ll;0;L;;;;;N;;;;;
 A7FB;LATIN EPIGRAPHIC LETTER REVERSED F;Lo;0;L;;;;;N;;;;;
 A7FC;LATIN EPIGRAPHIC LETTER REVERSED P;Lo;0;L;;;;;N;;;;;
@@ -14142,6 +14244,29 @@
 AADD;TAI VIET SYMBOL SAM;Lm;0;L;;;;;N;;;;;
 AADE;TAI VIET SYMBOL HO HOI;Po;0;L;;;;;N;;;;;
 AADF;TAI VIET SYMBOL KOI KOI;Po;0;L;;;;;N;;;;;
+AAE0;MEETEI MAYEK LETTER E;Lo;0;L;;;;;N;;;;;
+AAE1;MEETEI MAYEK LETTER O;Lo;0;L;;;;;N;;;;;
+AAE2;MEETEI MAYEK LETTER CHA;Lo;0;L;;;;;N;;;;;
+AAE3;MEETEI MAYEK LETTER NYA;Lo;0;L;;;;;N;;;;;
+AAE4;MEETEI MAYEK LETTER TTA;Lo;0;L;;;;;N;;;;;
+AAE5;MEETEI MAYEK LETTER TTHA;Lo;0;L;;;;;N;;;;;
+AAE6;MEETEI MAYEK LETTER DDA;Lo;0;L;;;;;N;;;;;
+AAE7;MEETEI MAYEK LETTER DDHA;Lo;0;L;;;;;N;;;;;
+AAE8;MEETEI MAYEK LETTER NNA;Lo;0;L;;;;;N;;;;;
+AAE9;MEETEI MAYEK LETTER SHA;Lo;0;L;;;;;N;;;;;
+AAEA;MEETEI MAYEK LETTER SSA;Lo;0;L;;;;;N;;;;;
+AAEB;MEETEI MAYEK VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
+AAEC;MEETEI MAYEK VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
+AAED;MEETEI MAYEK VOWEL SIGN AAI;Mn;0;NSM;;;;;N;;;;;
+AAEE;MEETEI MAYEK VOWEL SIGN AU;Mc;0;L;;;;;N;;;;;
+AAEF;MEETEI MAYEK VOWEL SIGN AAU;Mc;0;L;;;;;N;;;;;
+AAF0;MEETEI MAYEK CHEIKHAN;Po;0;L;;;;;N;;;;;
+AAF1;MEETEI MAYEK AHANG KHUDAM;Po;0;L;;;;;N;;;;;
+AAF2;MEETEI MAYEK ANJI;Lo;0;L;;;;;N;;;;;
+AAF3;MEETEI MAYEK SYLLABLE REPETITION MARK;Lm;0;L;;;;;N;;;;;
+AAF4;MEETEI MAYEK WORD REPETITION MARK;Lm;0;L;;;;;N;;;;;
+AAF5;MEETEI MAYEK VOWEL SIGN VISARGA;Mc;0;L;;;;;N;;;;;
+AAF6;MEETEI MAYEK VIRAMA;Mn;9;NSM;;;;;N;;;;;
 AB01;ETHIOPIC SYLLABLE TTHU;Lo;0;L;;;;;N;;;;;
 AB02;ETHIOPIC SYLLABLE TTHI;Lo;0;L;;;;;N;;;;;
 AB03;ETHIOPIC SYLLABLE TTHAA;Lo;0;L;;;;;N;;;;;
@@ -14614,6 +14739,8 @@
 FA2B;CJK COMPATIBILITY IDEOGRAPH-FA2B;Lo;0;L;98FC;;;;N;;;;;
 FA2C;CJK COMPATIBILITY IDEOGRAPH-FA2C;Lo;0;L;9928;;;;N;;;;;
 FA2D;CJK COMPATIBILITY IDEOGRAPH-FA2D;Lo;0;L;9DB4;;;;N;;;;;
+FA2E;CJK COMPATIBILITY IDEOGRAPH-FA2E;Lo;0;L;90DE;;;;N;;;;;
+FA2F;CJK COMPATIBILITY IDEOGRAPH-FA2F;Lo;0;L;96B7;;;;N;;;;;
 FA30;CJK COMPATIBILITY IDEOGRAPH-FA30;Lo;0;L;4FAE;;;;N;;;;;
 FA31;CJK COMPATIBILITY IDEOGRAPH-FA31;Lo;0;L;50E7;;;;N;;;;;
 FA32;CJK COMPATIBILITY IDEOGRAPH-FA32;Lo;0;L;514D;;;;N;;;;;
@@ -16126,7 +16253,7 @@
 100FA;LINEAR B IDEOGRAM VESSEL B305;Lo;0;L;;;;;N;;;;;
 10100;AEGEAN WORD SEPARATOR LINE;Po;0;L;;;;;N;;;;;
 10101;AEGEAN WORD SEPARATOR DOT;Po;0;ON;;;;;N;;;;;
-10102;AEGEAN CHECK MARK;So;0;L;;;;;N;;;;;
+10102;AEGEAN CHECK MARK;Po;0;L;;;;;N;;;;;
 10107;AEGEAN NUMBER ONE;No;0;L;;;;1;N;;;;;
 10108;AEGEAN NUMBER TWO;No;0;L;;;;2;N;;;;;
 10109;AEGEAN NUMBER THREE;No;0;L;;;;3;N;;;;;
@@ -16845,6 +16972,64 @@
 10938;LYDIAN LETTER NN;Lo;0;R;;;;;N;;;;;
 10939;LYDIAN LETTER C;Lo;0;R;;;;;N;;;;;
 1093F;LYDIAN TRIANGULAR MARK;Po;0;R;;;;;N;;;;;
+10980;MEROITIC HIEROGLYPHIC LETTER A;Lo;0;R;;;;;N;;;;;
+10981;MEROITIC HIEROGLYPHIC LETTER E;Lo;0;R;;;;;N;;;;;
+10982;MEROITIC HIEROGLYPHIC LETTER I;Lo;0;R;;;;;N;;;;;
+10983;MEROITIC HIEROGLYPHIC LETTER O;Lo;0;R;;;;;N;;;;;
+10984;MEROITIC HIEROGLYPHIC LETTER YA;Lo;0;R;;;;;N;;;;;
+10985;MEROITIC HIEROGLYPHIC LETTER WA;Lo;0;R;;;;;N;;;;;
+10986;MEROITIC HIEROGLYPHIC LETTER BA;Lo;0;R;;;;;N;;;;;
+10987;MEROITIC HIEROGLYPHIC LETTER BA-2;Lo;0;R;;;;;N;;;;;
+10988;MEROITIC HIEROGLYPHIC LETTER PA;Lo;0;R;;;;;N;;;;;
+10989;MEROITIC HIEROGLYPHIC LETTER MA;Lo;0;R;;;;;N;;;;;
+1098A;MEROITIC HIEROGLYPHIC LETTER NA;Lo;0;R;;;;;N;;;;;
+1098B;MEROITIC HIEROGLYPHIC LETTER NA-2;Lo;0;R;;;;;N;;;;;
+1098C;MEROITIC HIEROGLYPHIC LETTER NE;Lo;0;R;;;;;N;;;;;
+1098D;MEROITIC HIEROGLYPHIC LETTER NE-2;Lo;0;R;;;;;N;;;;;
+1098E;MEROITIC HIEROGLYPHIC LETTER RA;Lo;0;R;;;;;N;;;;;
+1098F;MEROITIC HIEROGLYPHIC LETTER RA-2;Lo;0;R;;;;;N;;;;;
+10990;MEROITIC HIEROGLYPHIC LETTER LA;Lo;0;R;;;;;N;;;;;
+10991;MEROITIC HIEROGLYPHIC LETTER KHA;Lo;0;R;;;;;N;;;;;
+10992;MEROITIC HIEROGLYPHIC LETTER HHA;Lo;0;R;;;;;N;;;;;
+10993;MEROITIC HIEROGLYPHIC LETTER SA;Lo;0;R;;;;;N;;;;;
+10994;MEROITIC HIEROGLYPHIC LETTER SA-2;Lo;0;R;;;;;N;;;;;
+10995;MEROITIC HIEROGLYPHIC LETTER SE;Lo;0;R;;;;;N;;;;;
+10996;MEROITIC HIEROGLYPHIC LETTER KA;Lo;0;R;;;;;N;;;;;
+10997;MEROITIC HIEROGLYPHIC LETTER QA;Lo;0;R;;;;;N;;;;;
+10998;MEROITIC HIEROGLYPHIC LETTER TA;Lo;0;R;;;;;N;;;;;
+10999;MEROITIC HIEROGLYPHIC LETTER TA-2;Lo;0;R;;;;;N;;;;;
+1099A;MEROITIC HIEROGLYPHIC LETTER TE;Lo;0;R;;;;;N;;;;;
+1099B;MEROITIC HIEROGLYPHIC LETTER TE-2;Lo;0;R;;;;;N;;;;;
+1099C;MEROITIC HIEROGLYPHIC LETTER TO;Lo;0;R;;;;;N;;;;;
+1099D;MEROITIC HIEROGLYPHIC LETTER DA;Lo;0;R;;;;;N;;;;;
+1099E;MEROITIC HIEROGLYPHIC SYMBOL VIDJ;Lo;0;R;;;;;N;;;;;
+1099F;MEROITIC HIEROGLYPHIC SYMBOL VIDJ-2;Lo;0;R;;;;;N;;;;;
+109A0;MEROITIC CURSIVE LETTER A;Lo;0;R;;;;;N;;;;;
+109A1;MEROITIC CURSIVE LETTER E;Lo;0;R;;;;;N;;;;;
+109A2;MEROITIC CURSIVE LETTER I;Lo;0;R;;;;;N;;;;;
+109A3;MEROITIC CURSIVE LETTER O;Lo;0;R;;;;;N;;;;;
+109A4;MEROITIC CURSIVE LETTER YA;Lo;0;R;;;;;N;;;;;
+109A5;MEROITIC CURSIVE LETTER WA;Lo;0;R;;;;;N;;;;;
+109A6;MEROITIC CURSIVE LETTER BA;Lo;0;R;;;;;N;;;;;
+109A7;MEROITIC CURSIVE LETTER PA;Lo;0;R;;;;;N;;;;;
+109A8;MEROITIC CURSIVE LETTER MA;Lo;0;R;;;;;N;;;;;
+109A9;MEROITIC CURSIVE LETTER NA;Lo;0;R;;;;;N;;;;;
+109AA;MEROITIC CURSIVE LETTER NE;Lo;0;R;;;;;N;;;;;
+109AB;MEROITIC CURSIVE LETTER RA;Lo;0;R;;;;;N;;;;;
+109AC;MEROITIC CURSIVE LETTER LA;Lo;0;R;;;;;N;;;;;
+109AD;MEROITIC CURSIVE LETTER KHA;Lo;0;R;;;;;N;;;;;
+109AE;MEROITIC CURSIVE LETTER HHA;Lo;0;R;;;;;N;;;;;
+109AF;MEROITIC CURSIVE LETTER SA;Lo;0;R;;;;;N;;;;;
+109B0;MEROITIC CURSIVE LETTER ARCHAIC SA;Lo;0;R;;;;;N;;;;;
+109B1;MEROITIC CURSIVE LETTER SE;Lo;0;R;;;;;N;;;;;
+109B2;MEROITIC CURSIVE LETTER KA;Lo;0;R;;;;;N;;;;;
+109B3;MEROITIC CURSIVE LETTER QA;Lo;0;R;;;;;N;;;;;
+109B4;MEROITIC CURSIVE LETTER TA;Lo;0;R;;;;;N;;;;;
+109B5;MEROITIC CURSIVE LETTER TE;Lo;0;R;;;;;N;;;;;
+109B6;MEROITIC CURSIVE LETTER TO;Lo;0;R;;;;;N;;;;;
+109B7;MEROITIC CURSIVE LETTER DA;Lo;0;R;;;;;N;;;;;
+109BE;MEROITIC CURSIVE LOGOGRAM RMT;Lo;0;R;;;;;N;;;;;
+109BF;MEROITIC CURSIVE LOGOGRAM IMN;Lo;0;R;;;;;N;;;;;
 10A00;KHAROSHTHI LETTER A;Lo;0;R;;;;;N;;;;;
 10A01;KHAROSHTHI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
 10A02;KHAROSHTHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
@@ -17338,6 +17523,257 @@
 110BF;KAITHI DOUBLE SECTION MARK;Po;0;L;;;;;N;;;;;
 110C0;KAITHI DANDA;Po;0;L;;;;;N;;;;;
 110C1;KAITHI DOUBLE DANDA;Po;0;L;;;;;N;;;;;
+110D0;SORA SOMPENG LETTER SAH;Lo;0;L;;;;;N;;;;;
+110D1;SORA SOMPENG LETTER TAH;Lo;0;L;;;;;N;;;;;
+110D2;SORA SOMPENG LETTER BAH;Lo;0;L;;;;;N;;;;;
+110D3;SORA SOMPENG LETTER CAH;Lo;0;L;;;;;N;;;;;
+110D4;SORA SOMPENG LETTER DAH;Lo;0;L;;;;;N;;;;;
+110D5;SORA SOMPENG LETTER GAH;Lo;0;L;;;;;N;;;;;
+110D6;SORA SOMPENG LETTER MAH;Lo;0;L;;;;;N;;;;;
+110D7;SORA SOMPENG LETTER NGAH;Lo;0;L;;;;;N;;;;;
+110D8;SORA SOMPENG LETTER LAH;Lo;0;L;;;;;N;;;;;
+110D9;SORA SOMPENG LETTER NAH;Lo;0;L;;;;;N;;;;;
+110DA;SORA SOMPENG LETTER VAH;Lo;0;L;;;;;N;;;;;
+110DB;SORA SOMPENG LETTER PAH;Lo;0;L;;;;;N;;;;;
+110DC;SORA SOMPENG LETTER YAH;Lo;0;L;;;;;N;;;;;
+110DD;SORA SOMPENG LETTER RAH;Lo;0;L;;;;;N;;;;;
+110DE;SORA SOMPENG LETTER HAH;Lo;0;L;;;;;N;;;;;
+110DF;SORA SOMPENG LETTER KAH;Lo;0;L;;;;;N;;;;;
+110E0;SORA SOMPENG LETTER JAH;Lo;0;L;;;;;N;;;;;
+110E1;SORA SOMPENG LETTER NYAH;Lo;0;L;;;;;N;;;;;
+110E2;SORA SOMPENG LETTER AH;Lo;0;L;;;;;N;;;;;
+110E3;SORA SOMPENG LETTER EEH;Lo;0;L;;;;;N;;;;;
+110E4;SORA SOMPENG LETTER IH;Lo;0;L;;;;;N;;;;;
+110E5;SORA SOMPENG LETTER UH;Lo;0;L;;;;;N;;;;;
+110E6;SORA SOMPENG LETTER OH;Lo;0;L;;;;;N;;;;;
+110E7;SORA SOMPENG LETTER EH;Lo;0;L;;;;;N;;;;;
+110E8;SORA SOMPENG LETTER MAE;Lo;0;L;;;;;N;;;;;
+110F0;SORA SOMPENG DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
+110F1;SORA SOMPENG DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
+110F2;SORA SOMPENG DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
+110F3;SORA SOMPENG DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
+110F4;SORA SOMPENG DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
+110F5;SORA SOMPENG DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
+110F6;SORA SOMPENG DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
+110F7;SORA SOMPENG DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
+110F8;SORA SOMPENG DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
+110F9;SORA SOMPENG DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
+11100;CHAKMA SIGN CANDRABINDU;Mn;230;NSM;;;;;N;;;;;
+11101;CHAKMA SIGN ANUSVARA;Mn;230;NSM;;;;;N;;;;;
+11102;CHAKMA SIGN VISARGA;Mn;230;NSM;;;;;N;;;;;
+11103;CHAKMA LETTER AA;Lo;0;L;;;;;N;;;;;
+11104;CHAKMA LETTER I;Lo;0;L;;;;;N;;;;;
+11105;CHAKMA LETTER U;Lo;0;L;;;;;N;;;;;
+11106;CHAKMA LETTER E;Lo;0;L;;;;;N;;;;;
+11107;CHAKMA LETTER KAA;Lo;0;L;;;;;N;;;;;
+11108;CHAKMA LETTER KHAA;Lo;0;L;;;;;N;;;;;
+11109;CHAKMA LETTER GAA;Lo;0;L;;;;;N;;;;;
+1110A;CHAKMA LETTER GHAA;Lo;0;L;;;;;N;;;;;
+1110B;CHAKMA LETTER NGAA;Lo;0;L;;;;;N;;;;;
+1110C;CHAKMA LETTER CAA;Lo;0;L;;;;;N;;;;;
+1110D;CHAKMA LETTER CHAA;Lo;0;L;;;;;N;;;;;
+1110E;CHAKMA LETTER JAA;Lo;0;L;;;;;N;;;;;
+1110F;CHAKMA LETTER JHAA;Lo;0;L;;;;;N;;;;;
+11110;CHAKMA LETTER NYAA;Lo;0;L;;;;;N;;;;;
+11111;CHAKMA LETTER TTAA;Lo;0;L;;;;;N;;;;;
+11112;CHAKMA LETTER TTHAA;Lo;0;L;;;;;N;;;;;
+11113;CHAKMA LETTER DDAA;Lo;0;L;;;;;N;;;;;
+11114;CHAKMA LETTER DDHAA;Lo;0;L;;;;;N;;;;;
+11115;CHAKMA LETTER NNAA;Lo;0;L;;;;;N;;;;;
+11116;CHAKMA LETTER TAA;Lo;0;L;;;;;N;;;;;
+11117;CHAKMA LETTER THAA;Lo;0;L;;;;;N;;;;;
+11118;CHAKMA LETTER DAA;Lo;0;L;;;;;N;;;;;
+11119;CHAKMA LETTER DHAA;Lo;0;L;;;;;N;;;;;
+1111A;CHAKMA LETTER NAA;Lo;0;L;;;;;N;;;;;
+1111B;CHAKMA LETTER PAA;Lo;0;L;;;;;N;;;;;
+1111C;CHAKMA LETTER PHAA;Lo;0;L;;;;;N;;;;;
+1111D;CHAKMA LETTER BAA;Lo;0;L;;;;;N;;;;;
+1111E;CHAKMA LETTER BHAA;Lo;0;L;;;;;N;;;;;
+1111F;CHAKMA LETTER MAA;Lo;0;L;;;;;N;;;;;
+11120;CHAKMA LETTER YYAA;Lo;0;L;;;;;N;;;;;
+11121;CHAKMA LETTER YAA;Lo;0;L;;;;;N;;;;;
+11122;CHAKMA LETTER RAA;Lo;0;L;;;;;N;;;;;
+11123;CHAKMA LETTER LAA;Lo;0;L;;;;;N;;;;;
+11124;CHAKMA LETTER WAA;Lo;0;L;;;;;N;;;;;
+11125;CHAKMA LETTER SAA;Lo;0;L;;;;;N;;;;;
+11126;CHAKMA LETTER HAA;Lo;0;L;;;;;N;;;;;
+11127;CHAKMA VOWEL SIGN A;Mn;0;NSM;;;;;N;;;;;
+11128;CHAKMA VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
+11129;CHAKMA VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
+1112A;CHAKMA VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
+1112B;CHAKMA VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
+1112C;CHAKMA VOWEL SIGN E;Mc;0;L;;;;;N;;;;;
+1112D;CHAKMA VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;;
+1112E;CHAKMA VOWEL SIGN O;Mn;0;NSM;11131 11127;;;;N;;;;;
+1112F;CHAKMA VOWEL SIGN AU;Mn;0;NSM;11132 11127;;;;N;;;;;
+11130;CHAKMA VOWEL SIGN OI;Mn;0;NSM;;;;;N;;;;;
+11131;CHAKMA O MARK;Mn;0;NSM;;;;;N;;;;;
+11132;CHAKMA AU MARK;Mn;0;NSM;;;;;N;;;;;
+11133;CHAKMA VIRAMA;Mn;9;NSM;;;;;N;;;;;
+11134;CHAKMA MAAYYAA;Mn;9;NSM;;;;;N;;;;;
+11136;CHAKMA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
+11137;CHAKMA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
+11138;CHAKMA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
+11139;CHAKMA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
+1113A;CHAKMA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
+1113B;CHAKMA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
+1113C;CHAKMA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
+1113D;CHAKMA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
+1113E;CHAKMA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
+1113F;CHAKMA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
+11140;CHAKMA SECTION MARK;Po;0;L;;;;;N;;;;;
+11141;CHAKMA DANDA;Po;0;L;;;;;N;;;;;
+11142;CHAKMA DOUBLE DANDA;Po;0;L;;;;;N;;;;;
+11143;CHAKMA QUESTION MARK;Po;0;L;;;;;N;;;;;
+11180;SHARADA SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
+11181;SHARADA SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
+11182;SHARADA SIGN VISARGA;Mc;0;L;;;;;N;;;;;
+11183;SHARADA LETTER A;Lo;0;L;;;;;N;;;;;
+11184;SHARADA LETTER AA;Lo;0;L;;;;;N;;;;;
+11185;SHARADA LETTER I;Lo;0;L;;;;;N;;;;;
+11186;SHARADA LETTER II;Lo;0;L;;;;;N;;;;;
+11187;SHARADA LETTER U;Lo;0;L;;;;;N;;;;;
+11188;SHARADA LETTER UU;Lo;0;L;;;;;N;;;;;
+11189;SHARADA LETTER VOCALIC R;Lo;0;L;;;;;N;;;;;
+1118A;SHARADA LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;;
+1118B;SHARADA LETTER VOCALIC L;Lo;0;L;;;;;N;;;;;
+1118C;SHARADA LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;;
+1118D;SHARADA LETTER E;Lo;0;L;;;;;N;;;;;
+1118E;SHARADA LETTER AI;Lo;0;L;;;;;N;;;;;
+1118F;SHARADA LETTER O;Lo;0;L;;;;;N;;;;;
+11190;SHARADA LETTER AU;Lo;0;L;;;;;N;;;;;
+11191;SHARADA LETTER KA;Lo;0;L;;;;;N;;;;;
+11192;SHARADA LETTER KHA;Lo;0;L;;;;;N;;;;;
+11193;SHARADA LETTER GA;Lo;0;L;;;;;N;;;;;
+11194;SHARADA LETTER GHA;Lo;0;L;;;;;N;;;;;
+11195;SHARADA LETTER NGA;Lo;0;L;;;;;N;;;;;
+11196;SHARADA LETTER CA;Lo;0;L;;;;;N;;;;;
+11197;SHARADA LETTER CHA;Lo;0;L;;;;;N;;;;;
+11198;SHARADA LETTER JA;Lo;0;L;;;;;N;;;;;
+11199;SHARADA LETTER JHA;Lo;0;L;;;;;N;;;;;
+1119A;SHARADA LETTER NYA;Lo;0;L;;;;;N;;;;;
+1119B;SHARADA LETTER TTA;Lo;0;L;;;;;N;;;;;
+1119C;SHARADA LETTER TTHA;Lo;0;L;;;;;N;;;;;
+1119D;SHARADA LETTER DDA;Lo;0;L;;;;;N;;;;;
+1119E;SHARADA LETTER DDHA;Lo;0;L;;;;;N;;;;;
+1119F;SHARADA LETTER NNA;Lo;0;L;;;;;N;;;;;
+111A0;SHARADA LETTER TA;Lo;0;L;;;;;N;;;;;
+111A1;SHARADA LETTER THA;Lo;0;L;;;;;N;;;;;
+111A2;SHARADA LETTER DA;Lo;0;L;;;;;N;;;;;
+111A3;SHARADA LETTER DHA;Lo;0;L;;;;;N;;;;;
+111A4;SHARADA LETTER NA;Lo;0;L;;;;;N;;;;;
+111A5;SHARADA LETTER PA;Lo;0;L;;;;;N;;;;;
+111A6;SHARADA LETTER PHA;Lo;0;L;;;;;N;;;;;
+111A7;SHARADA LETTER BA;Lo;0;L;;;;;N;;;;;
+111A8;SHARADA LETTER BHA;Lo;0;L;;;;;N;;;;;
+111A9;SHARADA LETTER MA;Lo;0;L;;;;;N;;;;;
+111AA;SHARADA LETTER YA;Lo;0;L;;;;;N;;;;;
+111AB;SHARADA LETTER RA;Lo;0;L;;;;;N;;;;;
+111AC;SHARADA LETTER LA;Lo;0;L;;;;;N;;;;;
+111AD;SHARADA LETTER LLA;Lo;0;L;;;;;N;;;;;
+111AE;SHARADA LETTER VA;Lo;0;L;;;;;N;;;;;
+111AF;SHARADA LETTER SHA;Lo;0;L;;;;;N;;;;;
+111B0;SHARADA LETTER SSA;Lo;0;L;;;;;N;;;;;
+111B1;SHARADA LETTER SA;Lo;0;L;;;;;N;;;;;
+111B2;SHARADA LETTER HA;Lo;0;L;;;;;N;;;;;
+111B3;SHARADA VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
+111B4;SHARADA VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
+111B5;SHARADA VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
+111B6;SHARADA VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
+111B7;SHARADA VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
+111B8;SHARADA VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;;
+111B9;SHARADA VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;;
+111BA;SHARADA VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;;
+111BB;SHARADA VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;;
+111BC;SHARADA VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;;
+111BD;SHARADA VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;;
+111BE;SHARADA VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;;
+111BF;SHARADA VOWEL SIGN AU;Mc;0;L;;;;;N;;;;;
+111C0;SHARADA SIGN VIRAMA;Mc;9;L;;;;;N;;;;;
+111C1;SHARADA SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;;
+111C2;SHARADA SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;;
+111C3;SHARADA SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;;
+111C4;SHARADA OM;Lo;0;L;;;;;N;;;;;
+111C5;SHARADA DANDA;Po;0;L;;;;;N;;;;;
+111C6;SHARADA DOUBLE DANDA;Po;0;L;;;;;N;;;;;
+111C7;SHARADA ABBREVIATION SIGN;Po;0;L;;;;;N;;;;;
+111C8;SHARADA SEPARATOR;Po;0;L;;;;;N;;;;;
+111D0;SHARADA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
+111D1;SHARADA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
+111D2;SHARADA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
+111D3;SHARADA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
+111D4;SHARADA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
+111D5;SHARADA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
+111D6;SHARADA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
+111D7;SHARADA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
+111D8;SHARADA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
+111D9;SHARADA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
+11680;TAKRI LETTER A;Lo;0;L;;;;;N;;;;;
+11681;TAKRI LETTER AA;Lo;0;L;;;;;N;;;;;
+11682;TAKRI LETTER I;Lo;0;L;;;;;N;;;;;
+11683;TAKRI LETTER II;Lo;0;L;;;;;N;;;;;
+11684;TAKRI LETTER U;Lo;0;L;;;;;N;;;;;
+11685;TAKRI LETTER UU;Lo;0;L;;;;;N;;;;;
+11686;TAKRI LETTER E;Lo;0;L;;;;;N;;;;;
+11687;TAKRI LETTER AI;Lo;0;L;;;;;N;;;;;
+11688;TAKRI LETTER O;Lo;0;L;;;;;N;;;;;
+11689;TAKRI LETTER AU;Lo;0;L;;;;;N;;;;;
+1168A;TAKRI LETTER KA;Lo;0;L;;;;;N;;;;;
+1168B;TAKRI LETTER KHA;Lo;0;L;;;;;N;;;;;
+1168C;TAKRI LETTER GA;Lo;0;L;;;;;N;;;;;
+1168D;TAKRI LETTER GHA;Lo;0;L;;;;;N;;;;;
+1168E;TAKRI LETTER NGA;Lo;0;L;;;;;N;;;;;
+1168F;TAKRI LETTER CA;Lo;0;L;;;;;N;;;;;
+11690;TAKRI LETTER CHA;Lo;0;L;;;;;N;;;;;
+11691;TAKRI LETTER JA;Lo;0;L;;;;;N;;;;;
+11692;TAKRI LETTER JHA;Lo;0;L;;;;;N;;;;;
+11693;TAKRI LETTER NYA;Lo;0;L;;;;;N;;;;;
+11694;TAKRI LETTER TTA;Lo;0;L;;;;;N;;;;;
+11695;TAKRI LETTER TTHA;Lo;0;L;;;;;N;;;;;
+11696;TAKRI LETTER DDA;Lo;0;L;;;;;N;;;;;
+11697;TAKRI LETTER DDHA;Lo;0;L;;;;;N;;;;;
+11698;TAKRI LETTER NNA;Lo;0;L;;;;;N;;;;;
+11699;TAKRI LETTER TA;Lo;0;L;;;;;N;;;;;
+1169A;TAKRI LETTER THA;Lo;0;L;;;;;N;;;;;
+1169B;TAKRI LETTER DA;Lo;0;L;;;;;N;;;;;
+1169C;TAKRI LETTER DHA;Lo;0;L;;;;;N;;;;;
+1169D;TAKRI LETTER NA;Lo;0;L;;;;;N;;;;;
+1169E;TAKRI LETTER PA;Lo;0;L;;;;;N;;;;;
+1169F;TAKRI LETTER PHA;Lo;0;L;;;;;N;;;;;
+116A0;TAKRI LETTER BA;Lo;0;L;;;;;N;;;;;
+116A1;TAKRI LETTER BHA;Lo;0;L;;;;;N;;;;;
+116A2;TAKRI LETTER MA;Lo;0;L;;;;;N;;;;;
+116A3;TAKRI LETTER YA;Lo;0;L;;;;;N;;;;;
+116A4;TAKRI LETTER RA;Lo;0;L;;;;;N;;;;;
+116A5;TAKRI LETTER LA;Lo;0;L;;;;;N;;;;;
+116A6;TAKRI LETTER VA;Lo;0;L;;;;;N;;;;;
+116A7;TAKRI LETTER SHA;Lo;0;L;;;;;N;;;;;
+116A8;TAKRI LETTER SA;Lo;0;L;;;;;N;;;;;
+116A9;TAKRI LETTER HA;Lo;0;L;;;;;N;;;;;
+116AA;TAKRI LETTER RRA;Lo;0;L;;;;;N;;;;;
+116AB;TAKRI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
+116AC;TAKRI SIGN VISARGA;Mc;0;L;;;;;N;;;;;
+116AD;TAKRI VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;;
+116AE;TAKRI VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
+116AF;TAKRI VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
+116B0;TAKRI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
+116B1;TAKRI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
+116B2;TAKRI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;;
+116B3;TAKRI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;;
+116B4;TAKRI VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;;
+116B5;TAKRI VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;;
+116B6;TAKRI SIGN VIRAMA;Mc;9;L;;;;;N;;;;;
+116B7;TAKRI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;;
+116C0;TAKRI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
+116C1;TAKRI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
+116C2;TAKRI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
+116C3;TAKRI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
+116C4;TAKRI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
+116C5;TAKRI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
+116C6;TAKRI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
+116C7;TAKRI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
+116C8;TAKRI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
+116C9;TAKRI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 12000;CUNEIFORM SIGN A;Lo;0;L;;;;;N;;;;;
 12001;CUNEIFORM SIGN A TIMES A;Lo;0;L;;;;;N;;;;;
 12002;CUNEIFORM SIGN A TIMES BAD;Lo;0;L;;;;;N;;;;;
@@ -19960,6 +20396,139 @@
 16A36;BAMUM LETTER PHASE-F KPA;Lo;0;L;;;;;N;;;;;
 16A37;BAMUM LETTER PHASE-F SAMBA;Lo;0;L;;;;;N;;;;;
 16A38;BAMUM LETTER PHASE-F VUEQ;Lo;0;L;;;;;N;;;;;
+16F00;MIAO LETTER PA;Lo;0;L;;;;;N;;;;;
+16F01;MIAO LETTER BA;Lo;0;L;;;;;N;;;;;
+16F02;MIAO LETTER YI PA;Lo;0;L;;;;;N;;;;;
+16F03;MIAO LETTER PLA;Lo;0;L;;;;;N;;;;;
+16F04;MIAO LETTER MA;Lo;0;L;;;;;N;;;;;
+16F05;MIAO LETTER MHA;Lo;0;L;;;;;N;;;;;
+16F06;MIAO LETTER ARCHAIC MA;Lo;0;L;;;;;N;;;;;
+16F07;MIAO LETTER FA;Lo;0;L;;;;;N;;;;;
+16F08;MIAO LETTER VA;Lo;0;L;;;;;N;;;;;
+16F09;MIAO LETTER VFA;Lo;0;L;;;;;N;;;;;
+16F0A;MIAO LETTER TA;Lo;0;L;;;;;N;;;;;
+16F0B;MIAO LETTER DA;Lo;0;L;;;;;N;;;;;
+16F0C;MIAO LETTER YI TTA;Lo;0;L;;;;;N;;;;;
+16F0D;MIAO LETTER YI TA;Lo;0;L;;;;;N;;;;;
+16F0E;MIAO LETTER TTA;Lo;0;L;;;;;N;;;;;
+16F0F;MIAO LETTER DDA;Lo;0;L;;;;;N;;;;;
+16F10;MIAO LETTER NA;Lo;0;L;;;;;N;;;;;
+16F11;MIAO LETTER NHA;Lo;0;L;;;;;N;;;;;
+16F12;MIAO LETTER YI NNA;Lo;0;L;;;;;N;;;;;
+16F13;MIAO LETTER ARCHAIC NA;Lo;0;L;;;;;N;;;;;
+16F14;MIAO LETTER NNA;Lo;0;L;;;;;N;;;;;
+16F15;MIAO LETTER NNHA;Lo;0;L;;;;;N;;;;;
+16F16;MIAO LETTER LA;Lo;0;L;;;;;N;;;;;
+16F17;MIAO LETTER LYA;Lo;0;L;;;;;N;;;;;
+16F18;MIAO LETTER LHA;Lo;0;L;;;;;N;;;;;
+16F19;MIAO LETTER LHYA;Lo;0;L;;;;;N;;;;;
+16F1A;MIAO LETTER TLHA;Lo;0;L;;;;;N;;;;;
+16F1B;MIAO LETTER DLHA;Lo;0;L;;;;;N;;;;;
+16F1C;MIAO LETTER TLHYA;Lo;0;L;;;;;N;;;;;
+16F1D;MIAO LETTER DLHYA;Lo;0;L;;;;;N;;;;;
+16F1E;MIAO LETTER KA;Lo;0;L;;;;;N;;;;;
+16F1F;MIAO LETTER GA;Lo;0;L;;;;;N;;;;;
+16F20;MIAO LETTER YI KA;Lo;0;L;;;;;N;;;;;
+16F21;MIAO LETTER QA;Lo;0;L;;;;;N;;;;;
+16F22;MIAO LETTER QGA;Lo;0;L;;;;;N;;;;;
+16F23;MIAO LETTER NGA;Lo;0;L;;;;;N;;;;;
+16F24;MIAO LETTER NGHA;Lo;0;L;;;;;N;;;;;
+16F25;MIAO LETTER ARCHAIC NGA;Lo;0;L;;;;;N;;;;;
+16F26;MIAO LETTER HA;Lo;0;L;;;;;N;;;;;
+16F27;MIAO LETTER XA;Lo;0;L;;;;;N;;;;;
+16F28;MIAO LETTER GHA;Lo;0;L;;;;;N;;;;;
+16F29;MIAO LETTER GHHA;Lo;0;L;;;;;N;;;;;
+16F2A;MIAO LETTER TSSA;Lo;0;L;;;;;N;;;;;
+16F2B;MIAO LETTER DZZA;Lo;0;L;;;;;N;;;;;
+16F2C;MIAO LETTER NYA;Lo;0;L;;;;;N;;;;;
+16F2D;MIAO LETTER NYHA;Lo;0;L;;;;;N;;;;;
+16F2E;MIAO LETTER TSHA;Lo;0;L;;;;;N;;;;;
+16F2F;MIAO LETTER DZHA;Lo;0;L;;;;;N;;;;;
+16F30;MIAO LETTER YI TSHA;Lo;0;L;;;;;N;;;;;
+16F31;MIAO LETTER YI DZHA;Lo;0;L;;;;;N;;;;;
+16F32;MIAO LETTER REFORMED TSHA;Lo;0;L;;;;;N;;;;;
+16F33;MIAO LETTER SHA;Lo;0;L;;;;;N;;;;;
+16F34;MIAO LETTER SSA;Lo;0;L;;;;;N;;;;;
+16F35;MIAO LETTER ZHA;Lo;0;L;;;;;N;;;;;
+16F36;MIAO LETTER ZSHA;Lo;0;L;;;;;N;;;;;
+16F37;MIAO LETTER TSA;Lo;0;L;;;;;N;;;;;
+16F38;MIAO LETTER DZA;Lo;0;L;;;;;N;;;;;
+16F39;MIAO LETTER YI TSA;Lo;0;L;;;;;N;;;;;
+16F3A;MIAO LETTER SA;Lo;0;L;;;;;N;;;;;
+16F3B;MIAO LETTER ZA;Lo;0;L;;;;;N;;;;;
+16F3C;MIAO LETTER ZSA;Lo;0;L;;;;;N;;;;;
+16F3D;MIAO LETTER ZZA;Lo;0;L;;;;;N;;;;;
+16F3E;MIAO LETTER ZZSA;Lo;0;L;;;;;N;;;;;
+16F3F;MIAO LETTER ARCHAIC ZZA;Lo;0;L;;;;;N;;;;;
+16F40;MIAO LETTER ZZYA;Lo;0;L;;;;;N;;;;;
+16F41;MIAO LETTER ZZSYA;Lo;0;L;;;;;N;;;;;
+16F42;MIAO LETTER WA;Lo;0;L;;;;;N;;;;;
+16F43;MIAO LETTER AH;Lo;0;L;;;;;N;;;;;
+16F44;MIAO LETTER HHA;Lo;0;L;;;;;N;;;;;
+16F50;MIAO LETTER NASALIZATION;Lo;0;L;;;;;N;;;;;
+16F51;MIAO SIGN ASPIRATION;Mc;0;L;;;;;N;;;;;
+16F52;MIAO SIGN REFORMED VOICING;Mc;0;L;;;;;N;;;;;
+16F53;MIAO SIGN REFORMED ASPIRATION;Mc;0;L;;;;;N;;;;;
+16F54;MIAO VOWEL SIGN A;Mc;0;L;;;;;N;;;;;
+16F55;MIAO VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
+16F56;MIAO VOWEL SIGN AHH;Mc;0;L;;;;;N;;;;;
+16F57;MIAO VOWEL SIGN AN;Mc;0;L;;;;;N;;;;;
+16F58;MIAO VOWEL SIGN ANG;Mc;0;L;;;;;N;;;;;
+16F59;MIAO VOWEL SIGN O;Mc;0;L;;;;;N;;;;;
+16F5A;MIAO VOWEL SIGN OO;Mc;0;L;;;;;N;;;;;
+16F5B;MIAO VOWEL SIGN WO;Mc;0;L;;;;;N;;;;;
+16F5C;MIAO VOWEL SIGN W;Mc;0;L;;;;;N;;;;;
+16F5D;MIAO VOWEL SIGN E;Mc;0;L;;;;;N;;;;;
+16F5E;MIAO VOWEL SIGN EN;Mc;0;L;;;;;N;;;;;
+16F5F;MIAO VOWEL SIGN ENG;Mc;0;L;;;;;N;;;;;
+16F60;MIAO VOWEL SIGN OEY;Mc;0;L;;;;;N;;;;;
+16F61;MIAO VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
+16F62;MIAO VOWEL SIGN IA;Mc;0;L;;;;;N;;;;;
+16F63;MIAO VOWEL SIGN IAN;Mc;0;L;;;;;N;;;;;
+16F64;MIAO VOWEL SIGN IANG;Mc;0;L;;;;;N;;;;;
+16F65;MIAO VOWEL SIGN IO;Mc;0;L;;;;;N;;;;;
+16F66;MIAO VOWEL SIGN IE;Mc;0;L;;;;;N;;;;;
+16F67;MIAO VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
+16F68;MIAO VOWEL SIGN IU;Mc;0;L;;;;;N;;;;;
+16F69;MIAO VOWEL SIGN ING;Mc;0;L;;;;;N;;;;;
+16F6A;MIAO VOWEL SIGN U;Mc;0;L;;;;;N;;;;;
+16F6B;MIAO VOWEL SIGN UA;Mc;0;L;;;;;N;;;;;
+16F6C;MIAO VOWEL SIGN UAN;Mc;0;L;;;;;N;;;;;
+16F6D;MIAO VOWEL SIGN UANG;Mc;0;L;;;;;N;;;;;
+16F6E;MIAO VOWEL SIGN UU;Mc;0;L;;;;;N;;;;;
+16F6F;MIAO VOWEL SIGN UEI;Mc;0;L;;;;;N;;;;;
+16F70;MIAO VOWEL SIGN UNG;Mc;0;L;;;;;N;;;;;
+16F71;MIAO VOWEL SIGN Y;Mc;0;L;;;;;N;;;;;
+16F72;MIAO VOWEL SIGN YI;Mc;0;L;;;;;N;;;;;
+16F73;MIAO VOWEL SIGN AE;Mc;0;L;;;;;N;;;;;
+16F74;MIAO VOWEL SIGN AEE;Mc;0;L;;;;;N;;;;;
+16F75;MIAO VOWEL SIGN ERR;Mc;0;L;;;;;N;;;;;
+16F76;MIAO VOWEL SIGN ROUNDED ERR;Mc;0;L;;;;;N;;;;;
+16F77;MIAO VOWEL SIGN ER;Mc;0;L;;;;;N;;;;;
+16F78;MIAO VOWEL SIGN ROUNDED ER;Mc;0;L;;;;;N;;;;;
+16F79;MIAO VOWEL SIGN AI;Mc;0;L;;;;;N;;;;;
+16F7A;MIAO VOWEL SIGN EI;Mc;0;L;;;;;N;;;;;
+16F7B;MIAO VOWEL SIGN AU;Mc;0;L;;;;;N;;;;;
+16F7C;MIAO VOWEL SIGN OU;Mc;0;L;;;;;N;;;;;
+16F7D;MIAO VOWEL SIGN N;Mc;0;L;;;;;N;;;;;
+16F7E;MIAO VOWEL SIGN NG;Mc;0;L;;;;;N;;;;;
+16F8F;MIAO TONE RIGHT;Mn;0;NSM;;;;;N;;;;;
+16F90;MIAO TONE TOP RIGHT;Mn;0;NSM;;;;;N;;;;;
+16F91;MIAO TONE ABOVE;Mn;0;NSM;;;;;N;;;;;
+16F92;MIAO TONE BELOW;Mn;0;NSM;;;;;N;;;;;
+16F93;MIAO LETTER TONE-2;Lm;0;L;;;;;N;;;;;
+16F94;MIAO LETTER TONE-3;Lm;0;L;;;;;N;;;;;
+16F95;MIAO LETTER TONE-4;Lm;0;L;;;;;N;;;;;
+16F96;MIAO LETTER TONE-5;Lm;0;L;;;;;N;;;;;
+16F97;MIAO LETTER TONE-6;Lm;0;L;;;;;N;;;;;
+16F98;MIAO LETTER TONE-7;Lm;0;L;;;;;N;;;;;
+16F99;MIAO LETTER TONE-8;Lm;0;L;;;;;N;;;;;
+16F9A;MIAO LETTER REFORMED TONE-1;Lm;0;L;;;;;N;;;;;
+16F9B;MIAO LETTER REFORMED TONE-2;Lm;0;L;;;;;N;;;;;
+16F9C;MIAO LETTER REFORMED TONE-4;Lm;0;L;;;;;N;;;;;
+16F9D;MIAO LETTER REFORMED TONE-5;Lm;0;L;;;;;N;;;;;
+16F9E;MIAO LETTER REFORMED TONE-6;Lm;0;L;;;;;N;;;;;
+16F9F;MIAO LETTER REFORMED TONE-8;Lm;0;L;;;;;N;;;;;
 1B000;KATAKANA LETTER ARCHAIC E;Lo;0;L;;;;;N;;;;;
 1B001;HIRAGANA LETTER ARCHAIC YE;Lo;0;L;;;;;N;;;;;
 1D000;BYZANTINE MUSICAL SYMBOL PSILI;So;0;L;;;;;N;;;;;
@@ -21599,6 +22168,149 @@
 1D7FD;MATHEMATICAL MONOSPACE DIGIT SEVEN;Nd;0;EN;<font> 0037;7;7;7;N;;;;;
 1D7FE;MATHEMATICAL MONOSPACE DIGIT EIGHT;Nd;0;EN;<font> 0038;8;8;8;N;;;;;
 1D7FF;MATHEMATICAL MONOSPACE DIGIT NINE;Nd;0;EN;<font> 0039;9;9;9;N;;;;;
+1EE00;ARABIC MATHEMATICAL ALEF;Lo;0;AL;<font> 0627;;;;N;;;;;
+1EE01;ARABIC MATHEMATICAL BEH;Lo;0;AL;<font> 0628;;;;N;;;;;
+1EE02;ARABIC MATHEMATICAL JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EE03;ARABIC MATHEMATICAL DAL;Lo;0;AL;<font> 062F;;;;N;;;;;
+1EE05;ARABIC MATHEMATICAL WAW;Lo;0;AL;<font> 0648;;;;N;;;;;
+1EE06;ARABIC MATHEMATICAL ZAIN;Lo;0;AL;<font> 0632;;;;N;;;;;
+1EE07;ARABIC MATHEMATICAL HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EE08;ARABIC MATHEMATICAL TAH;Lo;0;AL;<font> 0637;;;;N;;;;;
+1EE09;ARABIC MATHEMATICAL YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EE0A;ARABIC MATHEMATICAL KAF;Lo;0;AL;<font> 0643;;;;N;;;;;
+1EE0B;ARABIC MATHEMATICAL LAM;Lo;0;AL;<font> 0644;;;;N;;;;;
+1EE0C;ARABIC MATHEMATICAL MEEM;Lo;0;AL;<font> 0645;;;;N;;;;;
+1EE0D;ARABIC MATHEMATICAL NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EE0E;ARABIC MATHEMATICAL SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EE0F;ARABIC MATHEMATICAL AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EE10;ARABIC MATHEMATICAL FEH;Lo;0;AL;<font> 0641;;;;N;;;;;
+1EE11;ARABIC MATHEMATICAL SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EE12;ARABIC MATHEMATICAL QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EE13;ARABIC MATHEMATICAL REH;Lo;0;AL;<font> 0631;;;;N;;;;;
+1EE14;ARABIC MATHEMATICAL SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EE15;ARABIC MATHEMATICAL TEH;Lo;0;AL;<font> 062A;;;;N;;;;;
+1EE16;ARABIC MATHEMATICAL THEH;Lo;0;AL;<font> 062B;;;;N;;;;;
+1EE17;ARABIC MATHEMATICAL KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EE18;ARABIC MATHEMATICAL THAL;Lo;0;AL;<font> 0630;;;;N;;;;;
+1EE19;ARABIC MATHEMATICAL DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EE1A;ARABIC MATHEMATICAL ZAH;Lo;0;AL;<font> 0638;;;;N;;;;;
+1EE1B;ARABIC MATHEMATICAL GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EE1C;ARABIC MATHEMATICAL DOTLESS BEH;Lo;0;AL;<font> 066E;;;;N;;;;;
+1EE1D;ARABIC MATHEMATICAL DOTLESS NOON;Lo;0;AL;<font> 06BA;;;;N;;;;;
+1EE1E;ARABIC MATHEMATICAL DOTLESS FEH;Lo;0;AL;<font> 06A1;;;;N;;;;;
+1EE1F;ARABIC MATHEMATICAL DOTLESS QAF;Lo;0;AL;<font> 066F;;;;N;;;;;
+1EE21;ARABIC MATHEMATICAL INITIAL BEH;Lo;0;AL;<font> 0628;;;;N;;;;;
+1EE22;ARABIC MATHEMATICAL INITIAL JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EE24;ARABIC MATHEMATICAL INITIAL HEH;Lo;0;AL;<font> 0647;;;;N;;;;;
+1EE27;ARABIC MATHEMATICAL INITIAL HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EE29;ARABIC MATHEMATICAL INITIAL YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EE2A;ARABIC MATHEMATICAL INITIAL KAF;Lo;0;AL;<font> 0643;;;;N;;;;;
+1EE2B;ARABIC MATHEMATICAL INITIAL LAM;Lo;0;AL;<font> 0644;;;;N;;;;;
+1EE2C;ARABIC MATHEMATICAL INITIAL MEEM;Lo;0;AL;<font> 0645;;;;N;;;;;
+1EE2D;ARABIC MATHEMATICAL INITIAL NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EE2E;ARABIC MATHEMATICAL INITIAL SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EE2F;ARABIC MATHEMATICAL INITIAL AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EE30;ARABIC MATHEMATICAL INITIAL FEH;Lo;0;AL;<font> 0641;;;;N;;;;;
+1EE31;ARABIC MATHEMATICAL INITIAL SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EE32;ARABIC MATHEMATICAL INITIAL QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EE34;ARABIC MATHEMATICAL INITIAL SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EE35;ARABIC MATHEMATICAL INITIAL TEH;Lo;0;AL;<font> 062A;;;;N;;;;;
+1EE36;ARABIC MATHEMATICAL INITIAL THEH;Lo;0;AL;<font> 062B;;;;N;;;;;
+1EE37;ARABIC MATHEMATICAL INITIAL KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EE39;ARABIC MATHEMATICAL INITIAL DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EE3B;ARABIC MATHEMATICAL INITIAL GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EE42;ARABIC MATHEMATICAL TAILED JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EE47;ARABIC MATHEMATICAL TAILED HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EE49;ARABIC MATHEMATICAL TAILED YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EE4B;ARABIC MATHEMATICAL TAILED LAM;Lo;0;AL;<font> 0644;;;;N;;;;;
+1EE4D;ARABIC MATHEMATICAL TAILED NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EE4E;ARABIC MATHEMATICAL TAILED SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EE4F;ARABIC MATHEMATICAL TAILED AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EE51;ARABIC MATHEMATICAL TAILED SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EE52;ARABIC MATHEMATICAL TAILED QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EE54;ARABIC MATHEMATICAL TAILED SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EE57;ARABIC MATHEMATICAL TAILED KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EE59;ARABIC MATHEMATICAL TAILED DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EE5B;ARABIC MATHEMATICAL TAILED GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EE5D;ARABIC MATHEMATICAL TAILED DOTLESS NOON;Lo;0;AL;<font> 06BA;;;;N;;;;;
+1EE5F;ARABIC MATHEMATICAL TAILED DOTLESS QAF;Lo;0;AL;<font> 066F;;;;N;;;;;
+1EE61;ARABIC MATHEMATICAL STRETCHED BEH;Lo;0;AL;<font> 0628;;;;N;;;;;
+1EE62;ARABIC MATHEMATICAL STRETCHED JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EE64;ARABIC MATHEMATICAL STRETCHED HEH;Lo;0;AL;<font> 0647;;;;N;;;;;
+1EE67;ARABIC MATHEMATICAL STRETCHED HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EE68;ARABIC MATHEMATICAL STRETCHED TAH;Lo;0;AL;<font> 0637;;;;N;;;;;
+1EE69;ARABIC MATHEMATICAL STRETCHED YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EE6A;ARABIC MATHEMATICAL STRETCHED KAF;Lo;0;AL;<font> 0643;;;;N;;;;;
+1EE6C;ARABIC MATHEMATICAL STRETCHED MEEM;Lo;0;AL;<font> 0645;;;;N;;;;;
+1EE6D;ARABIC MATHEMATICAL STRETCHED NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EE6E;ARABIC MATHEMATICAL STRETCHED SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EE6F;ARABIC MATHEMATICAL STRETCHED AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EE70;ARABIC MATHEMATICAL STRETCHED FEH;Lo;0;AL;<font> 0641;;;;N;;;;;
+1EE71;ARABIC MATHEMATICAL STRETCHED SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EE72;ARABIC MATHEMATICAL STRETCHED QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EE74;ARABIC MATHEMATICAL STRETCHED SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EE75;ARABIC MATHEMATICAL STRETCHED TEH;Lo;0;AL;<font> 062A;;;;N;;;;;
+1EE76;ARABIC MATHEMATICAL STRETCHED THEH;Lo;0;AL;<font> 062B;;;;N;;;;;
+1EE77;ARABIC MATHEMATICAL STRETCHED KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EE79;ARABIC MATHEMATICAL STRETCHED DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EE7A;ARABIC MATHEMATICAL STRETCHED ZAH;Lo;0;AL;<font> 0638;;;;N;;;;;
+1EE7B;ARABIC MATHEMATICAL STRETCHED GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EE7C;ARABIC MATHEMATICAL STRETCHED DOTLESS BEH;Lo;0;AL;<font> 066E;;;;N;;;;;
+1EE7E;ARABIC MATHEMATICAL STRETCHED DOTLESS FEH;Lo;0;AL;<font> 06A1;;;;N;;;;;
+1EE80;ARABIC MATHEMATICAL LOOPED ALEF;Lo;0;AL;<font> 0627;;;;N;;;;;
+1EE81;ARABIC MATHEMATICAL LOOPED BEH;Lo;0;AL;<font> 0628;;;;N;;;;;
+1EE82;ARABIC MATHEMATICAL LOOPED JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EE83;ARABIC MATHEMATICAL LOOPED DAL;Lo;0;AL;<font> 062F;;;;N;;;;;
+1EE84;ARABIC MATHEMATICAL LOOPED HEH;Lo;0;AL;<font> 0647;;;;N;;;;;
+1EE85;ARABIC MATHEMATICAL LOOPED WAW;Lo;0;AL;<font> 0648;;;;N;;;;;
+1EE86;ARABIC MATHEMATICAL LOOPED ZAIN;Lo;0;AL;<font> 0632;;;;N;;;;;
+1EE87;ARABIC MATHEMATICAL LOOPED HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EE88;ARABIC MATHEMATICAL LOOPED TAH;Lo;0;AL;<font> 0637;;;;N;;;;;
+1EE89;ARABIC MATHEMATICAL LOOPED YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EE8B;ARABIC MATHEMATICAL LOOPED LAM;Lo;0;AL;<font> 0644;;;;N;;;;;
+1EE8C;ARABIC MATHEMATICAL LOOPED MEEM;Lo;0;AL;<font> 0645;;;;N;;;;;
+1EE8D;ARABIC MATHEMATICAL LOOPED NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EE8E;ARABIC MATHEMATICAL LOOPED SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EE8F;ARABIC MATHEMATICAL LOOPED AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EE90;ARABIC MATHEMATICAL LOOPED FEH;Lo;0;AL;<font> 0641;;;;N;;;;;
+1EE91;ARABIC MATHEMATICAL LOOPED SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EE92;ARABIC MATHEMATICAL LOOPED QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EE93;ARABIC MATHEMATICAL LOOPED REH;Lo;0;AL;<font> 0631;;;;N;;;;;
+1EE94;ARABIC MATHEMATICAL LOOPED SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EE95;ARABIC MATHEMATICAL LOOPED TEH;Lo;0;AL;<font> 062A;;;;N;;;;;
+1EE96;ARABIC MATHEMATICAL LOOPED THEH;Lo;0;AL;<font> 062B;;;;N;;;;;
+1EE97;ARABIC MATHEMATICAL LOOPED KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EE98;ARABIC MATHEMATICAL LOOPED THAL;Lo;0;AL;<font> 0630;;;;N;;;;;
+1EE99;ARABIC MATHEMATICAL LOOPED DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EE9A;ARABIC MATHEMATICAL LOOPED ZAH;Lo;0;AL;<font> 0638;;;;N;;;;;
+1EE9B;ARABIC MATHEMATICAL LOOPED GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EEA1;ARABIC MATHEMATICAL DOUBLE-STRUCK BEH;Lo;0;AL;<font> 0628;;;;N;;;;;
+1EEA2;ARABIC MATHEMATICAL DOUBLE-STRUCK JEEM;Lo;0;AL;<font> 062C;;;;N;;;;;
+1EEA3;ARABIC MATHEMATICAL DOUBLE-STRUCK DAL;Lo;0;AL;<font> 062F;;;;N;;;;;
+1EEA5;ARABIC MATHEMATICAL DOUBLE-STRUCK WAW;Lo;0;AL;<font> 0648;;;;N;;;;;
+1EEA6;ARABIC MATHEMATICAL DOUBLE-STRUCK ZAIN;Lo;0;AL;<font> 0632;;;;N;;;;;
+1EEA7;ARABIC MATHEMATICAL DOUBLE-STRUCK HAH;Lo;0;AL;<font> 062D;;;;N;;;;;
+1EEA8;ARABIC MATHEMATICAL DOUBLE-STRUCK TAH;Lo;0;AL;<font> 0637;;;;N;;;;;
+1EEA9;ARABIC MATHEMATICAL DOUBLE-STRUCK YEH;Lo;0;AL;<font> 064A;;;;N;;;;;
+1EEAB;ARABIC MATHEMATICAL DOUBLE-STRUCK LAM;Lo;0;AL;<font> 0644;;;;N;;;;;
+1EEAC;ARABIC MATHEMATICAL DOUBLE-STRUCK MEEM;Lo;0;AL;<font> 0645;;;;N;;;;;
+1EEAD;ARABIC MATHEMATICAL DOUBLE-STRUCK NOON;Lo;0;AL;<font> 0646;;;;N;;;;;
+1EEAE;ARABIC MATHEMATICAL DOUBLE-STRUCK SEEN;Lo;0;AL;<font> 0633;;;;N;;;;;
+1EEAF;ARABIC MATHEMATICAL DOUBLE-STRUCK AIN;Lo;0;AL;<font> 0639;;;;N;;;;;
+1EEB0;ARABIC MATHEMATICAL DOUBLE-STRUCK FEH;Lo;0;AL;<font> 0641;;;;N;;;;;
+1EEB1;ARABIC MATHEMATICAL DOUBLE-STRUCK SAD;Lo;0;AL;<font> 0635;;;;N;;;;;
+1EEB2;ARABIC MATHEMATICAL DOUBLE-STRUCK QAF;Lo;0;AL;<font> 0642;;;;N;;;;;
+1EEB3;ARABIC MATHEMATICAL DOUBLE-STRUCK REH;Lo;0;AL;<font> 0631;;;;N;;;;;
+1EEB4;ARABIC MATHEMATICAL DOUBLE-STRUCK SHEEN;Lo;0;AL;<font> 0634;;;;N;;;;;
+1EEB5;ARABIC MATHEMATICAL DOUBLE-STRUCK TEH;Lo;0;AL;<font> 062A;;;;N;;;;;
+1EEB6;ARABIC MATHEMATICAL DOUBLE-STRUCK THEH;Lo;0;AL;<font> 062B;;;;N;;;;;
+1EEB7;ARABIC MATHEMATICAL DOUBLE-STRUCK KHAH;Lo;0;AL;<font> 062E;;;;N;;;;;
+1EEB8;ARABIC MATHEMATICAL DOUBLE-STRUCK THAL;Lo;0;AL;<font> 0630;;;;N;;;;;
+1EEB9;ARABIC MATHEMATICAL DOUBLE-STRUCK DAD;Lo;0;AL;<font> 0636;;;;N;;;;;
+1EEBA;ARABIC MATHEMATICAL DOUBLE-STRUCK ZAH;Lo;0;AL;<font> 0638;;;;N;;;;;
+1EEBB;ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN;Lo;0;AL;<font> 063A;;;;N;;;;;
+1EEF0;ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL;Sm;0;ON;;;;;N;;;;;
+1EEF1;ARABIC MATHEMATICAL OPERATOR HAH WITH DAL;Sm;0;ON;;;;;N;;;;;
 1F000;MAHJONG TILE EAST WIND;So;0;ON;;;;;N;;;;;
 1F001;MAHJONG TILE SOUTH WIND;So;0;ON;;;;;N;;;;;
 1F002;MAHJONG TILE WEST WIND;So;0;ON;;;;;N;;;;;
@@ -21902,6 +22614,8 @@
 1F167;NEGATIVE CIRCLED LATIN CAPITAL LETTER X;So;0;L;;;;;N;;;;;
 1F168;NEGATIVE CIRCLED LATIN CAPITAL LETTER Y;So;0;L;;;;;N;;;;;
 1F169;NEGATIVE CIRCLED LATIN CAPITAL LETTER Z;So;0;L;;;;;N;;;;;
+1F16A;RAISED MC SIGN;So;0;ON;<super> 004D 0043;;;;N;;;;;
+1F16B;RAISED MD SIGN;So;0;ON;<super> 004D 0044;;;;N;;;;;
 1F170;NEGATIVE SQUARED LATIN CAPITAL LETTER A;So;0;L;;;;;N;;;;;
 1F171;NEGATIVE SQUARED LATIN CAPITAL LETTER B;So;0;L;;;;;N;;;;;
 1F172;NEGATIVE SQUARED LATIN CAPITAL LETTER C;So;0;L;;;;;N;;;;;
@@ -22354,7 +23068,7 @@
 1F489;SYRINGE;So;0;ON;;;;;N;;;;;
 1F48A;PILL;So;0;ON;;;;;N;;;;;
 1F48B;KISS MARK;So;0;ON;;;;;N;;;;;
-1F48C;LOVE LETTER;So;0;L;;;;;N;;;;;
+1F48C;LOVE LETTER;So;0;ON;;;;;N;;;;;
 1F48D;RING;So;0;ON;;;;;N;;;;;
 1F48E;GEM STONE;So;0;ON;;;;;N;;;;;
 1F48F;KISS;So;0;ON;;;;;N;;;;;
@@ -22502,7 +23216,7 @@
 1F521;INPUT SYMBOL FOR LATIN SMALL LETTERS;So;0;ON;;;;;N;;;;;
 1F522;INPUT SYMBOL FOR NUMBERS;So;0;ON;;;;;N;;;;;
 1F523;INPUT SYMBOL FOR SYMBOLS;So;0;ON;;;;;N;;;;;
-1F524;INPUT SYMBOL FOR LATIN LETTERS;So;0;L;;;;;N;;;;;
+1F524;INPUT SYMBOL FOR LATIN LETTERS;So;0;ON;;;;;N;;;;;
 1F525;FIRE;So;0;ON;;;;;N;;;;;
 1F526;ELECTRIC TORCH;So;0;ON;;;;;N;;;;;
 1F527;WRENCH;So;0;ON;;;;;N;;;;;
@@ -22528,6 +23242,10 @@
 1F53B;DOWN-POINTING RED TRIANGLE;So;0;ON;;;;;N;;;;;
 1F53C;UP-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;;
 1F53D;DOWN-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;;
+1F540;CIRCLED CROSS POMMEE;So;0;ON;;;;;N;;;;;
+1F541;CROSS POMMEE WITH HALF-CIRCLE BELOW;So;0;ON;;;;;N;;;;;
+1F542;CROSS POMMEE;So;0;ON;;;;;N;;;;;
+1F543;NOTCHED LEFT SEMICIRCLE WITH THREE DOTS;So;0;ON;;;;;N;;;;;
 1F550;CLOCK FACE ONE OCLOCK;So;0;ON;;;;;N;;;;;
 1F551;CLOCK FACE TWO OCLOCK;So;0;ON;;;;;N;;;;;
 1F552;CLOCK FACE THREE OCLOCK;So;0;ON;;;;;N;;;;;
@@ -22557,6 +23275,7 @@
 1F5FD;STATUE OF LIBERTY;So;0;ON;;;;;N;;;;;
 1F5FE;SILHOUETTE OF JAPAN;So;0;ON;;;;;N;;;;;
 1F5FF;MOYAI;So;0;ON;;;;;N;;;;;
+1F600;GRINNING FACE;So;0;ON;;;;;N;;;;;
 1F601;GRINNING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;;
 1F602;FACE WITH TEARS OF JOY;So;0;ON;;;;;N;;;;;
 1F603;SMILING FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;;
@@ -22573,30 +23292,42 @@
 1F60E;SMILING FACE WITH SUNGLASSES;So;0;ON;;;;;N;;;;;
 1F60F;SMIRKING FACE;So;0;ON;;;;;N;;;;;
 1F610;NEUTRAL FACE;So;0;ON;;;;;N;;;;;
+1F611;EXPRESSIONLESS FACE;So;0;ON;;;;;N;;;;;
 1F612;UNAMUSED FACE;So;0;ON;;;;;N;;;;;
 1F613;FACE WITH COLD SWEAT;So;0;ON;;;;;N;;;;;
 1F614;PENSIVE FACE;So;0;ON;;;;;N;;;;;
+1F615;CONFUSED FACE;So;0;ON;;;;;N;;;;;
 1F616;CONFOUNDED FACE;So;0;ON;;;;;N;;;;;
+1F617;KISSING FACE;So;0;ON;;;;;N;;;;;
 1F618;FACE THROWING A KISS;So;0;ON;;;;;N;;;;;
+1F619;KISSING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;;
 1F61A;KISSING FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;;
+1F61B;FACE WITH STUCK-OUT TONGUE;So;0;ON;;;;;N;;;;;
 1F61C;FACE WITH STUCK-OUT TONGUE AND WINKING EYE;So;0;ON;;;;;N;;;;;
 1F61D;FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES;So;0;ON;;;;;N;;;;;
 1F61E;DISAPPOINTED FACE;So;0;ON;;;;;N;;;;;
+1F61F;WORRIED FACE;So;0;ON;;;;;N;;;;;
 1F620;ANGRY FACE;So;0;ON;;;;;N;;;;;
 1F621;POUTING FACE;So;0;ON;;;;;N;;;;;
 1F622;CRYING FACE;So;0;ON;;;;;N;;;;;
 1F623;PERSEVERING FACE;So;0;ON;;;;;N;;;;;
 1F624;FACE WITH LOOK OF TRIUMPH;So;0;ON;;;;;N;;;;;
 1F625;DISAPPOINTED BUT RELIEVED FACE;So;0;ON;;;;;N;;;;;
+1F626;FROWNING FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;;
+1F627;ANGUISHED FACE;So;0;ON;;;;;N;;;;;
 1F628;FEARFUL FACE;So;0;ON;;;;;N;;;;;
 1F629;WEARY FACE;So;0;ON;;;;;N;;;;;
 1F62A;SLEEPY FACE;So;0;ON;;;;;N;;;;;
 1F62B;TIRED FACE;So;0;ON;;;;;N;;;;;
+1F62C;GRIMACING FACE;So;0;ON;;;;;N;;;;;
 1F62D;LOUDLY CRYING FACE;So;0;ON;;;;;N;;;;;
+1F62E;FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;;
+1F62F;HUSHED FACE;So;0;ON;;;;;N;;;;;
 1F630;FACE WITH OPEN MOUTH AND COLD SWEAT;So;0;ON;;;;;N;;;;;
 1F631;FACE SCREAMING IN FEAR;So;0;ON;;;;;N;;;;;
 1F632;ASTONISHED FACE;So;0;ON;;;;;N;;;;;
 1F633;FLUSHED FACE;So;0;ON;;;;;N;;;;;
+1F634;SLEEPING FACE;So;0;ON;;;;;N;;;;;
 1F635;DIZZY FACE;So;0;ON;;;;;N;;;;;
 1F636;FACE WITHOUT MOUTH;So;0;ON;;;;;N;;;;;
 1F637;FACE WITH MEDICAL MASK;So;0;ON;;;;;N;;;;;
--- a/make/tools/UnicodeData/VERSION	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/UnicodeData/VERSION	Tue May 08 07:34:53 2012 -0700
@@ -1,1 +1,1 @@
-6.0.0
+6.1.0
--- a/make/tools/src/build/tools/compileproperties/CompileProperties.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/src/build/tools/compileproperties/CompileProperties.java	Tue May 08 07:34:53 2012 -0700
@@ -90,6 +90,7 @@
     private static String outfiles[] ;
     private static String supers[]   ;
     private static int compileCount = 0;
+    private static boolean quiet = false;
 
     private static boolean parseOptions(String args[]) {
         boolean ok = true;
@@ -114,21 +115,21 @@
                 outfiles[compileCount]  = args[++i];
                 supers[compileCount]    = args[++i];
                 compileCount++;
-            } else if ( "-optionsfile".equals(args[i]) && i+1 < args.length ) {
-                String filename = args[++i];
+            } else if ( args[i].charAt(0) == '@') {
+                String filename = args[i].substring(1);
                 FileInputStream finput = null;
                 byte contents[] = null;
                 try {
                     finput = new FileInputStream(filename);
                     int byteCount = finput.available();
                     if ( byteCount <= 0 ) {
-                        error("The -optionsfile file is empty", null);
+                        error("The @file is empty", null);
                         ok = false;
                     } else {
                         contents = new byte[byteCount];
                         int bytesRead = finput.read(contents);
                         if ( byteCount != bytesRead ) {
-                            error("Cannot read all of -optionsfile file", null);
+                            error("Cannot read all of @file", null);
                             ok = false;
                         }
                     }
@@ -144,7 +145,7 @@
                         error("cannot close " + filename, e);
                     }
                 }
-                if ( ok = true && contents != null ) {
+                if ( ok && contents != null ) {
                     String tokens[] = (new String(contents)).split("\\s+");
                     if ( tokens.length > 0 ) {
                         ok = parseOptions(tokens);
@@ -163,6 +164,13 @@
 
     public static void main(String[] args) {
         boolean ok = true;
+        if (args.length >= 1 && args[0].equals("-quiet"))
+        {
+            quiet = true;
+            String[] newargs = new String[args.length-1];
+            System.arraycopy(args, 1, newargs, 0, newargs.length);
+            args = newargs;
+        }
         /* Original usage */
         if (args.length == 2 && args[0].charAt(0) != '-' ) {
             ok = createFile(args[0], args[1], "ListResourceBundle");
@@ -197,18 +205,20 @@
         System.err.println("usage:");
         System.err.println("    java -jar compileproperties.jar path_to_properties_file path_to_java_output_file [super_class]");
         System.err.println("      -OR-");
-        System.err.println("    java -jar compileproperties.jar {-compile path_to_properties_file path_to_java_output_file super_class} -or- -optionsfile filename");
+        System.err.println("    java -jar compileproperties.jar {-compile path_to_properties_file path_to_java_output_file super_class} -or- @filename");
         System.err.println("");
         System.err.println("Example:");
         System.err.println("    java -jar compileproperties.jar -compile test.properties test.java ListResourceBundle");
-        System.err.println("    java -jar compileproperties.jar -optionsfile option_file");
+        System.err.println("    java -jar compileproperties.jar @option_file");
         System.err.println("option_file contains: -compile test.properties test.java ListResourceBundle");
     }
 
     private static boolean createFile(String propertiesPath, String outputPath,
             String superClass) {
         boolean ok = true;
-        System.out.println("parsing: " + propertiesPath);
+        if (!quiet) {
+            System.out.println("parsing: " + propertiesPath);
+        }
         Properties p = new Properties();
         try {
             p.load(new FileInputStream(propertiesPath));
@@ -221,7 +231,9 @@
         }
         if ( ok ) {
             String packageName = inferPackageName(propertiesPath, outputPath);
-            System.out.println("inferred package name: " + packageName);
+            if (!quiet) {
+                System.out.println("inferred package name: " + packageName);
+            }
             List<String> sortedKeys = new ArrayList<>();
             for ( Object key : p.keySet() ) {
                 sortedKeys.add((String)key);
@@ -276,7 +288,9 @@
                     error("IO error close " + outputPath, e);
                 }
             }
-            System.out.println("wrote: " + outputPath);
+            if (!quiet) {
+                System.out.println("wrote: " + outputPath);
+            }
         }
         return ok;
     }
--- a/make/tools/src/build/tools/generatecharacter/CharacterScript.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/src/build/tools/generatecharacter/CharacterScript.java	Tue May 08 07:34:53 2012 -0700
@@ -1,3 +1,5 @@
+package build.tools.generatecharacter;
+
 import java.util.regex.*;
 import java.util.*;
 import java.io.*;
--- a/make/tools/src/build/tools/stripproperties/StripProperties.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/make/tools/src/build/tools/stripproperties/StripProperties.java	Tue May 08 07:34:53 2012 -0700
@@ -36,6 +36,7 @@
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Enumeration;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 
@@ -53,82 +54,89 @@
         }
     }
 
-    private static List<String> parseOptions(String args[]) {
-        List<String> files = new ArrayList<String>();
+    private static List<String> infiles = new ArrayList<String>();
+    private static List<String> outfiles = new ArrayList<String>();
+
+    private static boolean parseOptions(String args[]) {
+        boolean ok = true;
+
         for ( int i = 0; i < args.length ; i++ ) {
-            if ( "-optionsfile".equals(args[i]) && i+1 < args.length ) {
-                String filename = args[++i];
+            if ( "-clean".equals(args[i]) && i+2 < args.length ) {
+                infiles.add(args[++i]);
+                outfiles.add(args[++i]);
+            } else if ( args[i].charAt(0)=='@') {
+                String filename = args[i].substring(1);
                 FileInputStream finput = null;
                 byte contents[] = null;
                 try {
                     finput = new FileInputStream(filename);
                     int byteCount = finput.available();
                     if ( byteCount <= 0 ) {
-                        error("The -optionsfile file is empty", null);
-                        files = null;
+                        error("The @file is empty", null);
+                        ok = false;
                     } else {
                         contents = new byte[byteCount];
                         int bytesRead = finput.read(contents);
                         if ( byteCount != bytesRead ) {
-                            error("Cannot read all of -optionsfile file", null);
-                            files = null;
+                            error("Cannot read all of @file", null);
+                            ok = false;
                         }
                     }
                 } catch ( IOException e ) {
                     error("cannot open " + filename, e);
-                    files = null;
+                    ok = false;
                 }
                 if ( finput != null ) {
                     try {
                         finput.close();
                     } catch ( IOException e ) {
-                        files = null;
+                        ok = false;
                         error("cannot close " + filename, e);
                     }
                 }
-                if ( files != null && contents != null ) {
+                if ( ok && contents != null ) {
                     String tokens[] = (new String(contents)).split("\\s+");
                     if ( tokens.length > 0 ) {
-                        List<String> ofiles = parseOptions(tokens);
-                        if ( ofiles != null ) {
-                            files.addAll(ofiles);
-                        } else {
-                            error("No files found in file", null);
-                            files = null;
-                        }
+                        ok = parseOptions(tokens);
                     }
                 }
-                if ( files == null ) {
+                if ( !ok ) {
                     break;
                 }
             } else {
-                files.add(args[i]);
+                infiles.add(args[i]);
+                outfiles.add(args[i]);
             }
         }
-        return files;
+        return ok;
     }
 
-    private static boolean stripFiles(List<String> files) {
+    private static boolean stripFiles(List<String> infiles, List<String> outfiles) {
         boolean ok = true;
-        for ( String file : files ) {
+        Iterator<String> inIter  = infiles.iterator();
+        Iterator<String> outIter = outfiles.iterator();
+
+        for (; inIter.hasNext(); ) {
+            String infile = inIter.next();
+            String outfile = outIter.next();
 
             Properties prop = new Properties();
             InputStream in = null;
             try {
-                in = new BufferedInputStream(new FileInputStream(file));
+                in = new BufferedInputStream(new FileInputStream(infile));
                 prop.load(in);
             } catch ( FileNotFoundException e ) {
-                error("Cannot access file " + file, e);
+                error("Cannot access file " + infile, e);
                 ok = false;
             } catch ( IOException e ) {
-                error("IO exception processing file " + file, e);
+                error("IO exception processing file " + infile, e);
                 ok = false;
             }
             if ( in != null ) {
                 try {
                     in.close();
                 } catch ( IOException e ) {
-                    error("IO exception closing file " + file, e);
+                    error("IO exception closing file " + infile, e);
                     ok = false;
                 }
             }
@@ -138,18 +146,18 @@
 
             OutputStream out = null;
             try {
-                out = new FileOutputStream(file);
+                out = new FileOutputStream(outfile);
                 storeProperties(prop, out);
                 out.flush();
             } catch ( IOException e ) {
-                error("IO exception processing file " + file, e);
+                error("IO exception processing file " + outfile, e);
                 ok = false;
             }
             if ( out != null ) {
                 try {
                     out.close();
                 } catch ( IOException e ) {
-                    error("IO exception closing file " + file, e);
+                    error("IO exception closing file " + outfile, e);
                     ok = false;
                 }
             }
@@ -166,8 +174,8 @@
      * @param args Names of properties files to process and replace contents
      */
     public static void main(String args[]) {
-        List<String> files = parseOptions(args);
-        if ( files == null || !stripFiles(files) ) {
+        boolean ok = parseOptions(args);
+        if ( !ok || !stripFiles(infiles, outfiles) ) {
             System.exit(1);
         }
     }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CompileDemos.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,352 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include NativeCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+
+# Append demo goals to this variable.
+BUILD_DEMOS=
+
+# The demo structure and contents should really be cleaned up.
+# Now every other demo has its own quirks where to put the
+# READMEs and other files.
+
+##################################################################################################
+
+define SetupAppletDemo
+     $$(eval $$(call SetupJavaCompilation,BUILD_DEMO_APPLET_$1,\
+                SETUP:=GENERATE_USINGJDKBYTECODE$2,\
+		SRC:=$(JDK_TOPDIR)/src/$3share/demo/applets/$1,\
+		BIN:=$(JDK_OUTPUTDIR)/newdemo/applets/$1,\
+		COPY:=.html .java .xyz .obj .au .gif))
+     BUILD_DEMOS += $$(BUILD_DEMO_APPLET_$1)
+endef
+
+$(eval $(call SetupAppletDemo,ArcTest))
+$(eval $(call SetupAppletDemo,BarChart))
+$(eval $(call SetupAppletDemo,Blink))
+$(eval $(call SetupAppletDemo,CardTest))
+$(eval $(call SetupAppletDemo,Clock))
+$(eval $(call SetupAppletDemo,DitherTest))
+$(eval $(call SetupAppletDemo,DrawTest))
+$(eval $(call SetupAppletDemo,Fractal))
+$(eval $(call SetupAppletDemo,GraphicsTest))
+$(eval $(call SetupAppletDemo,MoleculeViewer))
+$(eval $(call SetupAppletDemo,NervousText))
+$(eval $(call SetupAppletDemo,SimpleGraph))
+$(eval $(call SetupAppletDemo,SortDemo))
+$(eval $(call SetupAppletDemo,SpreadSheet))
+# Build WireFrame without a server since it
+# has a class Matrix3D that also exists in MoleculeViewer.
+$(eval $(call SetupAppletDemo,WireFrame,_NOSERV))
+
+ifndef OPENJDK
+    $(eval $(call SetupAppletDemo,Animator,,closed/))
+    $(eval $(call SetupAppletDemo,GraphLayout,_NOSERV,closed/))
+    $(eval $(call SetupAppletDemo,JumpingBox,,closed/))
+    $(eval $(call SetupAppletDemo,TicTacToe,,closed/))
+endif
+
+##################################################################################################
+
+PATTERNS_TO_COPY=.html .txt .properties .js .gif .jpg .theme .data .opt README .c .h .png .ttf
+
+define SetupDemo
+    # Param 1 = Name of the demo
+    # Param 2 = Subdirectory of the demo below the demo directory.
+    # Param 3 = Additional javac flags.
+    # Param 4 = The main class for the jar.
+    # Param 5 = Additional source directory.
+    # Param 6 = Extra dir below $(JDK_TOPDIR)/src (closed)
+    # Param 7 = List of files to copy
+    # Param 8 = Base name of jar file. Defaults to $1
+    # Param 9 = Exclude list
+    # Param 10 = Extra copy patterns
+    # Param 11 = Extra manifest attribute
+    # Param 12 = Suffix for compiler setup name
+
+    # In some demos the source is found in a subdir called src.
+    $1_MAIN_SRC:=$$(wildcard $(JDK_TOPDIR)/src/$6share/demo/$2/$1/src)
+    ifeq ($$($1_MAIN_SRC),)
+        $1_MAIN_SRC:=$(JDK_TOPDIR)/src/$6share/demo/$2/$1
+    endif
+
+    ifneq ($8,)
+        $1_JARFILE := $8.jar
+    else
+        $1_JARFILE := $1.jar
+    endif
+
+    # Compile java classes if there are any.
+    $1_JAVA_FILES_EXIST := $$(shell $$(FIND) $$($1_MAIN_SRC) -name "*.java")
+
+    ifneq ($$($1_JAVA_FILES_EXIST),)
+        $$(eval $$(call SetupJavaCompilation,BUILD_DEMO_$1,\
+                SETUP:=GENERATE_USINGJDKBYTECODE$(12),\
+                ADD_JAVAC_FLAGS:=$3,\
+		SRC:=$$($1_MAIN_SRC) $5,\
+		BIN:=$(JDK_OUTPUTDIR)/newdemoclasses/$2/$1,\
+		COPY:=$(PATTERNS_TO_COPY) $(10),\
+		JAR:=$(JDK_OUTPUTDIR)/newdemo/$2/$1/$$($1_JARFILE),\
+		JARMAIN:=$4,\
+		MANIFEST:=$(JDK_TOPDIR)/make/tools/manifest.mf,\
+		EXTRA_MANIFEST_ATTR:=$(11),\
+		SRCZIP:=$(JDK_OUTPUTDIR)/newdemo/$2/$1/src.zip,\
+		EXCLUDE_FILES:=$9))
+
+        BUILD_DEMOS +=  $$(BUILD_DEMO_$1) \
+			$(JDK_OUTPUTDIR)/newdemo/$2/$1/$$($1_JARFILE) \
+			$(JDK_OUTPUTDIR)/newdemo/$2/$1/src.zip 
+    endif
+
+    # Copy files.
+    $1_COPY_TARGETS :=  $$(patsubst $(JDK_TOPDIR)/src/$6share/demo/$2/$1/%,\
+			$(JDK_OUTPUTDIR)/newdemo/$2/$1/%,\
+			$$(wildcard $$(addprefix $(JDK_TOPDIR)/src/$6share/demo/$2/$1/,$7)))
+    ifneq ($7,)
+        $(JDK_OUTPUTDIR)/newdemo/$2/$1/% : $(JDK_TOPDIR)/src/$6share/demo/$2/$1/%
+		mkdir -p $$(@D)
+		cp $$< $$@
+		chmod -f ug+w $$@
+
+        BUILD_DEMOS += $$($1_COPY_TARGETS)
+    endif
+
+endef
+
+$(eval $(call SetupDemo,CodePointIM,jfc,,CodePointIM,,,*.html))
+$(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/_the.services : \
+			$(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/CodePointIM.jar \
+			$(JDK_TOPDIR)/src/share/demo/jfc/CodePointIM/java.awt.im.spi.InputMethodDescriptor
+	(cd $(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM && \
+		$(MKDIR) -p _the.tmp/META-INF/services && \
+		$(CP) $(JDK_TOPDIR)/src/share/demo/jfc/CodePointIM/java.awt.im.spi.InputMethodDescriptor _the.tmp/META-INF/services && \
+		cd _the.tmp && \
+		$(JAR) uf $(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/CodePointIM.jar META-INF/services/java.awt.im.spi.InputMethodDescriptor && \
+		cd META-INF/services && \
+		$(JAR) uf $(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/CodePointIM.jar java.awt.im.spi.InputMethodDescriptor)
+	$(RM) -r $(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/_the.tmp
+	touch $@
+
+BUILD_DEMOS+=$(JDK_OUTPUTDIR)/newdemo/jfc/CodePointIM/_the.services
+
+$(eval $(call SetupDemo,FileChooserDemo,jfc,,FileChooserDemo,,,README*))
+$(eval $(call SetupDemo,Font2DTest,jfc,,Font2DTest,,,*.html *.txt))
+$(eval $(call SetupDemo,Metalworks,jfc,,Metalworks,,,README*))
+$(eval $(call SetupDemo,Notepad,jfc,,Notepad,,,README*))
+$(eval $(call SetupDemo,SampleTree,jfc,,SampleTree,,,README*))
+$(eval $(call SetupDemo,SwingApplet,jfc,,SwingApplet,,,README* *.html))
+$(eval $(call SetupDemo,TableExample,jfc,,TableExample,,,README*))
+$(eval $(call SetupDemo,TransparentRuler,jfc,,transparentruler.Ruler,,,README*))
+$(eval $(call SetupDemo,jconsole-plugin,scripting,-cp $(JDK_OUTPUTDIR)/lib/jconsole.jar,,,,*.xml *.txt))
+$(eval $(call SetupDemo,FullThreadDump,management,,FullThreadDump,,,README*))
+$(eval $(call SetupDemo,JTop,management,-cp $(JDK_OUTPUTDIR)/lib/jconsole.jar,JTop,,,README*))
+$(eval $(call SetupDemo,MemoryMonitor,management,,MemoryMonitor,,,README*))
+$(eval $(call SetupDemo,VerboseGC,management,,VerboseGC,,,README*))
+$(eval $(call SetupDemo,zipfs,nio,,,,,README* *.java))
+
+ifndef OPENJDK
+    $(eval $(call SetupDemo,Laffy,jfc,,,,closed/,*))
+    $(eval $(call SetupDemo,SwingSet3,jfc,,,,closed/,*))
+
+    $(eval $(call SetupDemo,Java2D,jfc,,java2d.Java2Demo,,closed/,*.html README*,Java2Demo))
+    $(eval $(call SetupDemo,Stylepad,jfc,,Stylepad,\
+		$(JDK_TOPDIR)/src/share/demo/jfc/Notepad,closed/,*.txt,,$(JDK_TOPDIR)/src/share/demo/jfc/Notepad/README.txt))
+    $(eval $(call SetupDemo,SwingSet2,jfc,,SwingSet2,,closed/,README* *.html,,,.java COPYRIGHT,\
+		SplashScreen-Image: resources/images/splash.png,_NOSERV))
+
+    BUILD_DEMOS += $(patsubst $(JDK_TOPDIR)/src/closed/share/demo/nbproject/%,\
+			$(JDK_OUTPUTDIR)/newdemo/nbproject/%,\
+			$(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/demo/nbproject/ -type f))
+    $(JDK_OUTPUTDIR)/newdemo/nbproject/% : $(JDK_TOPDIR)/src/closed/share/demo/nbproject/%
+		mkdir -p $(@D)
+		cp $< $@
+		chmod -f ug+w $@
+endif
+
+##################################################################################################
+
+# Why do we install a demo jar into the main jre/lib/ext????????????????
+$(JDK_OUTPUTDIR)/lib/ext/zipfs.jar : $(JDK_OUTPUTDIR)/newdemo/nio/zipfs/zipfs.jar
+		$(MKDIR) -p $(@D)
+		$(CP) $< $@
+
+BUILD_DEMOS += $(JDK_OUTPUTDIR)/lib/ext/zipfs.jar
+
+##################################################################################################
+
+# In the old makefiles, j2dbench was not compiled. 
+#$(eval $(call SetupDemo,J2DBench,java2d,/src,,j2dbench/J2DBench))
+
+define SetupJVMTIDemo
+     # Param 1 = Name of the demo
+     # Param 2 = add these directories to the includes, default is agent_util
+     # Param 3 = extra CFLAGS
+     # Param 4 = C or C++ (defaults to C)
+     # Param 5 = libs for posix
+     # Param 6 = libs for winapi
+     # Param 7 = libs for solaris
+     BUILD_DEMO_JVMTI_$1_EXTRA_SRC:=	$$(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/demo/jvmti/$1) \
+					$$(wildcard $$(addprefix $(JDK_TOPDIR)/src/share/demo/jvmti/,$2))
+     BUILD_DEMO_JVMTI_$1_EXTRA_INC:=$$(addprefix -I,$$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC))
+     BUILD_DEMO_JVMTI_$1_LANG:=C
+     BUILD_DEMO_JVMTI_$1_O_FLAG:=$(C_O_FLAG_NORM)
+     ifneq (,$4)
+         BUILD_DEMO_JVMTI_$1_LANG:=$4
+     endif
+     ifeq (C++,$4)
+         $1_EXTRA_CXX:=$(LIBCXX)
+         BUILD_DEMO_JVMTI_$1_O_FLAG:=$(CXX_O_FLAG_NORM)
+     endif
+     $$(eval $$(call SetupNativeCompilation,BUILD_DEMO_JVMTI_$1,\
+		SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\
+		LANG:=$$(BUILD_DEMO_JVMTI_$1_LANG),\
+		CFLAGS:=$(CFLAGS_JDKLIB) $$(BUILD_DEMO_JVMTI_$1_O_FLAG) -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB),\
+		LDFLAGS_SUFFIX:=$$($1_EXTRA_CXX),\
+		LDFLAGS_SUFFIX_posix:=$5,\
+		LDFLAGS_SUFFIX_winapi:=$6,\
+		LDFLAGS_SUFFIX_solaris:=-lc $7,\
+		BIN:=$(JDK_OUTPUTDIR)/newdemoobjs/jvmti/$1,\
+		LIB:=$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/lib/$(LIBRARY_PREFIX)$1$(SHARED_LIBRARY_SUFFIX)))
+
+    $$(eval $$(call SetupZipArchive,BUILD_DEMO_JVMTI_SRC_$1,\
+		SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC),\
+		ZIP:=$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/src.zip))
+
+     $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/README.txt : $(JDK_TOPDIR)/src/share/demo/jvmti/$1/README.txt
+		$(MKDIR) -p $$(@D)
+		$(CP) $$< $$@
+		$(CHMOD) -f ug+w $$@
+
+     ifneq (,$$(wildcard $(JDK_TOPDIR)/src/share/demo/jvmti/$1/*.java))
+         $$(eval $$(call SetupJavaCompilation,BUILD_DEMO_JVMTI_$1_JAVA,\
+                SETUP:=GENERATE_USINGJDKBYTECODE,\
+		SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/$1,\
+		BIN:=$(JDK_OUTPUTDIR)/newdemoclasses/jvmti/$1,\
+		COPY:=$(PATTERNS_TO_COPY),\
+		JAR:=$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/$1.jar,\
+		JARMAIN:=,\
+		MANIFEST:=$(JDK_TOPDIR)/make/tools/manifest.mf))
+
+         BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/jvmti/$1/$1.jar
+     endif
+
+     BUILD_DEMOS += 	$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/lib/$(LIBRARY_PREFIX)$1$(SHARED_LIBRARY_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/src.zip \
+			$(JDK_OUTPUTDIR)/newdemo/jvmti/$1/README.txt
+endef
+
+$(eval $(call SetupJVMTIDemo,compiledMethodLoad,	agent_util))
+$(eval $(call SetupJVMTIDemo,gctest,			agent_util))
+$(eval $(call SetupJVMTIDemo,heapTracker,		agent_util java_crw_demo))
+$(eval $(call SetupJVMTIDemo,heapViewer,		agent_util))
+# hprof contains error messages using __FILE__ macro. These expand to the absolute path
+# in the new build system and relative in the old, causing the binaries to differ.
+$(eval $(call SetupJVMTIDemo,hprof,			java_crw_demo,\
+		-I$(JDK_TOPDIR)/src/share/npt -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt,C,\
+		-ldl,ws2_32.lib winmm.lib,-lsocket -lnsl))
+
+$(eval $(call SetupJVMTIDemo,minst,			agent_util java_crw_demo))
+$(eval $(call SetupJVMTIDemo,mtrace,			agent_util java_crw_demo))
+$(eval $(call SetupJVMTIDemo,waiters,			agent_util,,C++))
+$(eval $(call SetupJVMTIDemo,versionCheck,		agent_util))
+
+##################################################################################################
+
+# The jpda demo (com/sun/tools/example) is oddly enough stored in src/share/classes.
+# At least, we do not need to compile the jpda demo, just jar/zip up the sources.
+JPDA_SOURCES:=$(shell $(FIND) $(JDK_TOPDIR)/src/share/classes/com/sun/tools/example -type f)
+# The number of files are few enough so that we can use echo safely below to list them.
+JPDA_FILES:=$(subst $(JDK_TOPDIR)/src/share/classes/,,$(JPDA_SOURCES))
+
+$(JDK_OUTPUTDIR)/newdemo/jpda/src.zip : $(JPDA_SOURCES)
+		mkdir -p $(@D)
+		(cd $(JDK_TOPDIR)/src/share/classes && $(ZIP) -qru $@ com -i "com/sun/tools/example/*")
+
+$(JDK_OUTPUTDIR)/newdemo/jpda/examples.jar : $(JPDA_SOURCES)
+		mkdir -p $(@D)
+		$(RM) $(@D)/_the.sources
+		$(call ListPathsSafely,JPDA_FILES,\n, >> $(@D)/_the.sources)
+		$(SED) -e "s#@@RELEASE@@#$(RELEASE)#" 		\
+		       -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" $(JDK_TOPDIR)/make/tools/manifest.mf > $(@D)/_the.manifest
+		$(ECHO) "Main-Class: " >> $(@D)/_the.manifest
+		(cd $(JDK_TOPDIR)/src/share/classes && $(JAR) cfm  $@ $(@D)/_the.manifest @$(@D)/_the.sources)
+		(cd $(JDK_TOPDIR)/src/share/classes/com/sun/tools/example && $(JAR) uf $@ README)
+
+$(JDK_OUTPUTDIR)/newdemo/jpda/com/sun/tools/example/README : $(JDK_TOPDIR)/src/share/classes/com/sun/tools/example/README
+		mkdir -p $(@D)
+		$(CP) $< $@
+		$(CHMOD) -f ug+w $@
+
+BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/jpda/src.zip $(JDK_OUTPUTDIR)/newdemo/jpda/examples.jar \
+		$(JDK_OUTPUTDIR)/newdemo/jpda/com/sun/tools/example/README
+
+##################################################################################################
+
+$(JDK_OUTPUTDIR)/newdemo/management/index.html : $(JDK_TOPDIR)/src/share/demo/management/index.html
+		mkdir -p $(@D)
+		$(CP) $< $@
+		$(CHMOD) -f ug+w $@
+
+$(JDK_OUTPUTDIR)/newdemo/jvmti/index.html : $(JDK_TOPDIR)/src/share/demo/jvmti/index.html
+		mkdir -p $(@D)
+		$(CP) $< $@
+		$(CHMOD) -f ug+w $@
+
+BUILD_DEMOS += $(JDK_OUTPUTDIR)/newdemo/management/index.html \
+		$(JDK_OUTPUTDIR)/newdemo/jvmti/index.html
+
+##################################################################################################
+
+# The netbeans project files are copied into the demo directory.
+
+NETBEANS_DEMO_PROJECTS_FILES=$(shell $(FIND) $(JDK_TOPDIR)/src/share/demo/nbproject -type f)
+
+$(JDK_OUTPUTDIR)/newdemo/_the.nbproject: $(NETBEANS_DEMO_PROJECTS_FILES)
+	$(MKDIR) -p $(JDK_OUTPUTDIR)/newdemo
+	$(RM) -rf $(JDK_OUTPUTDIR)/newdemo/nbproject
+	echo Copying Netbeans demo projects
+	(cd $(JDK_TOPDIR)/src/share/demo && cp -r nbproject $(JDK_OUTPUTDIR)/newdemo)
+	touch $@
+
+##################################################################################################
+
+$(JDK_OUTPUTDIR)/newdemo/README : $(JDK_TOPDIR)/src/share/demo/README
+	mkdir -p $(@D)
+	cp $< $@
+
+##################################################################################################
+
+all: $(BUILD_DEMOS) $(JDK_OUTPUTDIR)/newdemo/_the.nbproject $(JDK_OUTPUTDIR)/newdemo/README
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CompileJavaClasses.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,243 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+
+EXCLUDES:=	sun/dc \
+		sun/security/pkcs11 \
+		com/sun/pept \
+		com/sun/tools/example/trace\
+		com/sun/tools/example/debug/bdi\
+		com/sun/tools/example/debug/event\
+		com/sun/tools/example/debug/gui \
+		javax/crypto \
+		com/oracle/security
+
+ifdef OPENJDK
+    EXCLUDES+=	com/sun/jmx/snmp \
+		sun/management/snmp \
+		com/sun/script
+endif
+
+ifneq ($(PLATFORM),solaris)
+   # Exclude Solaris nio and two security related files in src/share/classes
+   EXFILES:=SolarisAclFileAttributeView.java \
+	SolarisFileStore.java \
+	SolarisFileSystem.java \
+	SolarisFileSystemProvider.java \
+	SolarisNativeDispatcher.java \
+	SolarisUserDefinedFileAttributeView.java \
+	SolarisWatchService.java \
+	DevPollArrayWrapper.java \
+	DevPollSelectorImpl.java \
+	DevPollSelectorProvider.java \
+	SolarisAsynchronousChannelProvider.java \
+	SolarisEventPort.java \
+	SolarisAclFileAttributeView.java \
+	SolarisFileStore.java \
+	SolarisFileSystem.java \
+	SolarisFileSystemProvider.java \
+	SolarisUserDefinedFileAttributeView.java \
+	SolarisNativeDispatcher.java \
+	SolarisWatchService.java \
+	SolarisLoginModule.java \
+	SolarisSystem.java \
+	sun/tools/attach/SolarisAttachProvider.java \
+	sun/tools/attach/SolarisVirtualMachine.java
+endif
+
+# Why?
+EXFILES+=WrapperGenerator.java
+
+ifneq ($(PLATFORM),windows)
+    # Exclude Window security related files in src/share/classes
+    EXFILES+=NTLoginModule.java \
+             NTSystem.java
+
+endif
+
+ifeq ($(PLATFORM),windows)
+    # Does nio channels exist on Windows?
+    EXCLUDES+=sun/nio/ch
+endif
+
+ifneq ($(PLATFORM),linux)
+    EXCLUDES+=com/sun/java/swing/plaf/gtk
+    EXFILES+=sun/tools/attach/LinuxAttachProvider.java \
+	sun/tools/attach/LinuxVirtualMachine.java
+endif
+
+ifneq ($(PLATFORM),macosx)
+    EXFILES+=sun/nio/fs/BsdFileStore.java \
+	     sun/nio/fs/BsdFileSystem.java \
+             sun/nio/fs/BsdFileSystemProvider.java \
+             sun/nio/fs/BsdNativeDispatcher.java \
+             sun/tools/attach/BsdAttachProvider.java \
+             sun/tools/attach/BsdVirtualMachine.java
+endif
+
+# Generated nimbus files that apparently should not be compiled...
+EXFILES+=InternalFrameTitlePanePainter.java \
+	OptionPaneMessageAreaPainter.java \
+        ScrollBarPainter.java \
+	SliderPainter.java \
+	SpinnerPainter.java \
+	SplitPanePainter.java \
+	TabbedPanePainter.java
+
+# New class /java/lang/annotation/ContainerAnnotation.java is not included in old 
+# build
+EXFILES+=java/lang/annotation/ContainerAnnotation.java
+
+# Exclude BreakIterator classes that are just used in compile process to generate
+# data files and shouldn't go in the product
+EXFILES+=sun/text/resources/BreakIteratorRules.java \
+	sun/text/resources/BreakIteratorRules_th.java
+
+# TODO: Add BUILD_HEADLESS_ONLY to configure?
+ifdef BUILD_HEADLESS_ONLY
+    EXCLUDES+=sun/applet
+endif
+
+ifdef OPENJDK
+    EXCLUDES+=sun/java2d/cmm/kcms
+else
+    EXCLUDES+=sun/java2d/cmm/lcms
+endif
+
+# Not used on windows
+ifneq ($(PLATFORM), windows)
+    EXFILES+=sun/awt/AWTCharset.java
+endif
+
+# Exclude some generated AWT files that were implicitly not included by the old build.
+EXFILES+=sun/awt/X11/ScreenFormat.java \
+         sun/awt/X11/XArc.java \
+         sun/awt/X11/XChar2b.java \
+         sun/awt/X11/XCharStruct.java \
+         sun/awt/X11/XClassHint.java \
+         sun/awt/X11/XComposeStatus.java \
+         sun/awt/X11/XExtCodes.java \
+         sun/awt/X11/XFontProp.java \
+         sun/awt/X11/XFontSetExtents.java \
+         sun/awt/X11/XFontStruct.java \
+         sun/awt/X11/XGCValues.java \
+         sun/awt/X11/XHostAddress.java \
+         sun/awt/X11/XIMCallback.java \
+         sun/awt/X11/XIMHotKeyTrigger.java \
+         sun/awt/X11/XIMHotKeyTriggers.java \
+         sun/awt/X11/XIMPreeditCaretCallbackStruct.java \
+         sun/awt/X11/XIMPreeditDrawCallbackStruct.java \
+         sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java \
+         sun/awt/X11/XIMStatusDrawCallbackStruct.java \
+         sun/awt/X11/XIMStringConversionCallbackStruct.java \
+         sun/awt/X11/XIMStringConversionText.java \
+         sun/awt/X11/XIMStyles.java \
+         sun/awt/X11/XIMText.java \
+         sun/awt/X11/XIMValuesList.java \
+         sun/awt/X11/XImage.java \
+         sun/awt/X11/XKeyboardControl.java \
+         sun/awt/X11/XKeyboardState.java \
+         sun/awt/X11/XOMCharSetList.java \
+         sun/awt/X11/XOMFontInfo.java \
+         sun/awt/X11/XOMOrientation.java \
+         sun/awt/X11/XPoint.java \
+         sun/awt/X11/XRectangle.java \
+         sun/awt/X11/XSegment.java \
+         sun/awt/X11/XStandardColormap.java \
+         sun/awt/X11/XTextItem.java \
+         sun/awt/X11/XTextItem16.java \
+         sun/awt/X11/XTextProperty.java \
+         sun/awt/X11/XTimeCoord.java \
+         sun/awt/X11/XWindowChanges.java \
+         sun/awt/X11/XdbeSwapInfo.java \
+         sun/awt/X11/XmbTextItem.java \
+         sun/awt/X11/XwcTextItem.java
+
+# Exclude sun/security files that should go in a separate jar
+EXFILES+=sun/security/ec/ECDHKeyAgreement.java \
+         sun/security/ec/ECDSASignature.java \
+         sun/security/ec/ECKeyPairGenerator.java \
+         sun/security/ec/SunEC$1.java \
+         sun/security/ec/SunEC.java \
+         sun/security/ec/SunECEntries.java
+
+# Exclude another implicitly not included file.
+EXFILES+=sun/util/locale/AsciiUtil.java
+
+ifeq ($(PLATFORM), linux)
+    EXFILES+=sun/nio/fs/PollingWatchService.java
+endif
+
+# TODO: Fix when converting NIO
+# Exclude *-linux-arm.java and *-linux-ppc.java from closed.
+EXFILES+=-linux-arm.java \
+	 -linux-ppc.java
+
+# TODO: Is this necessary?
+ifeq ($(PLATFORM), windows)
+    EXFILES+=sun/net/sdp/SdpProvider.java
+else
+    EXFILES+=sun/net/www/protocol/http/ntlm/NTLMAuthSequence.java
+endif
+
+# Acquire a list of files that should be copied straight over to the classes.
+include CopyIntoClasses.gmk
+# Now we have COPY_PATTERNS, COPY_FILES and COPY_EXTRA
+
+ifndef OPENJDK
+    CLOSED_SRC_DIRS:=$(JDK_TOPDIR)/src/closed/share/classes \
+		     $(JDK_TOPDIR)/src/closed/$(LEGACY_HOST_OS_API)/classes
+endif
+
+$(eval $(call SetupJavaCompilation,BUILD_JDK,\
+                SETUP:=GENERATE_JDKBYTECODE,\
+		SRC:=$(JDK_TOPDIR)/src/share/classes \
+		     $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes \
+		     $(JDK_OUTPUTDIR)/gensrc \
+		     $(CLOSED_SRC_DIRS),\
+		EXCLUDES:=$(EXCLUDES),\
+		EXCLUDE_FILES:=$(EXFILES),\
+		BIN:=$(JDK_OUTPUTDIR)/newclasses,\
+		COPY:=$(COPY_PATTERNS),\
+		COPY_FILES:=$(COPY_FILES),\
+		JAR:=$(JDK_OUTPUTDIR)/newrt.jar,\
+		HEADERS:=$(JDK_OUTPUTDIR)/gensrc_headers))
+
+# copy with -a to preserve timestamps so dependencies down the line aren't messed up
+all: $(BUILD_JDK) $(JDK_OUTPUTDIR)/newrt.jar $(COPY_EXTRA)
+	(cd $(JDK_OUTPUTDIR); \
+		$(CP) -rp newclasses/* classes; \
+		$(FIND) classes -name "_the.*" $(FIND_DELETE); \
+		$(TOUCH) $(JDK_OUTPUTDIR)/classes/META-INF/services/com.sun.tools.xjc.Plugin)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CompileLaunchers.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,360 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+defalt: all
+
+include $(SPEC)
+include MakeBase.gmk
+include NativeCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+
+BUILD_LAUNCHERS=
+
+define SetupLauncher
+    # TODO: Fix mapfile on solaris. Won't work with ld as linker.
+    # Parameter 1 is the name of the launcher (java,javac,jar...)
+    # Parameter 2 are extra CFLAGS
+    # Parameter 3 are extra LDFLAGS
+    # Parameter 4 are extra LDFLAGS_SUFFIX_posix
+    # Parameter 5 are extra LDFLAGS_SUFFIX_winapi
+    $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\
+	SRC:=$(JDK_TOPDIR)/src/share/bin,\
+	INCLUDE_FILES:=main.c,\
+	LANG:=C,\
+	CFLAGS:=$(CFLAGS_JDKEXE) $(C_O_FLAG_NORM) \
+		-I$(JDK_TOPDIR)/src/share/bin \
+		-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin \
+		-I$(JDK_TOPDIR)/src/$(PLATFORM)/bin \
+                -DFULL_VERSION='"$(FULL_VERSION)"' \
+                -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \
+                -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \
+		-DLIBARCHNAME='"$(ARCH)"' \
+		-DLAUNCHER_NAME='"openjdk"' \
+		-DPROGNAME='"$1"' $(DPACKAGEPATH) \
+		$2,\
+	CFLAGS_linux:=-fPIC,\
+	LDFLAGS:=$(LDFLAGS_JDKEXE) \
+                 $(call SET_SHARED_LIBRARY_ORIGIN,../lib/$(LIBARCH)/jli) \
+                 $(call SET_SHARED_LIBRARY_ORIGIN,../jre/lib/$(LIBARCH)/jli) \
+		 $3,\
+        LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/launchers/mapfile-$(ARCH)),\
+        LDFLAGS_SUFFIX:=$(LDFLAGS_JDKEXE_SUFFIX),\
+	LDFLAGS_SUFFIX_posix:=$4 -lc,\
+	LDFLAGS_SUFFIX_winapi:=$5,\
+	BIN:=$(JDK_OUTPUTDIR)/newobjs/$1_objs,\
+	EXE:=$(JDK_OUTPUTDIR)/newobjs/$1$(EXE_SUFFIX),\
+	VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
+	RC_FLAGS:=$(RC_FLAGS)\
+		  /D "JDK_FNAME=$1$(EXE_SUFFIX)" \
+		  /D "JDK_INTERNAL_NAME=$1" \
+		  /D "JDK_FTYPE=0x1L")
+
+    BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/newobjs/$1$(EXE_SUFFIX) $(JDK_OUTPUTDIR)/bin/$1$(EXE_SUFFIX)
+endef
+
+##########################################################################################
+
+XLIBS:=-lX11
+ifeq ($(PLATFORM),macosx)
+    DPACKAGEPATH:=-DPACKAGE_PATH='"$(PACKAGE_PATH)"'
+    XLIBS:=
+endif
+
+$(eval $(call SetupLauncher,java,\
+    -DEXPAND_CLASSPATH_WILDCARDS))
+
+ifeq ($(PLATFORM),solaris)
+    THREAD_LIB:=-lthread
+endif
+ifeq ($(PLATFORM),linux)
+    THREAD_LIB:=-lpthread
+endif
+
+ifndef BUILD_HEADLESS_ONLY
+$(eval $(call SetupLauncher,appletviewer,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.applet.Main"$(COMMA) }',,\
+    $(THREAD_LIB) $(XLIBS) -ldl))
+endif
+
+$(eval $(call SetupLauncher,extcheck,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.extcheck.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,idlj,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.corba.se.idl.toJavaPortable.Compile"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jar,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jar.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jarsigner,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.security.tools.JarSigner"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,javac,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DNEVER_ACT_AS_SERVER_CLASS_MACHINE \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.javac.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,javadoc,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DNEVER_ACT_AS_SERVER_CLASS_MACHINE \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.javadoc.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,javah,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DNEVER_ACT_AS_SERVER_CLASS_MACHINE \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.javah.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,javap,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DNEVER_ACT_AS_SERVER_CLASS_MACHINE \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.javap.Main"$(COMMA) }'))
+
+BUILD_LAUNCHER_jconsole_CPPFLAGS_windows:=-DJAVAW
+BUILD_LAUNCHER_jconsole_LDFLAGS_windows:=user32.lib
+
+$(eval $(call SetupLauncher,jconsole,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "-J-Djconsole.showOutputViewer"$(COMMA) "sun.tools.jconsole.JConsole"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/jconsole.jar"$(COMMA) "/lib/tools.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jdb,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.example.debug.tty.TTY"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jhat,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.hat.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jinfo,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \
+		   "sun.tools.jinfo.JInfo"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jmap,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \
+		   "sun.tools.jmap.JMap"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jps,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jps.Jps"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jrunscript,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.script.shell.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jsadebugd,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.jvm.hotspot.jdi.SADebugServer"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jstack,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useProcDebugger"$(COMMA) \
+		   "-J-Dsun.jvm.hotspot.debugger.useWindbgDebugger"$(COMMA) \
+		   "sun.tools.jstack.JStack"$(COMMA) }' \
+    -DAPP_CLASSPATH='{ "/lib/tools.jar"$(COMMA) "/lib/sa-jdi.jar"$(COMMA) "/classes" }'))
+
+$(eval $(call SetupLauncher,jstat,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jstat.Jstat"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jstatd,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.jstatd.Jstatd"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,keytool,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.security.tools.KeyTool"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,native2ascii,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.native2ascii.Main"$(COMMA) }'))
+
+ifndef BUILD_HEADLESS_ONLY
+$(eval $(call SetupLauncher,policytool,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.security.tools.policytool.PolicyTool"$(COMMA) }'))
+endif
+
+$(eval $(call SetupLauncher,rmic,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.rmi.rmic.Main"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,schemagen,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.internal.jxc.SchemaGenerator"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,serialver,\
+    -DEXPAND_CLASSPATH_WILDCARDS \
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "sun.tools.serialver.SerialVer"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,xjc,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.internal.xjc.Driver"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,wsgen,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.internal.ws.WsGen"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,wsimport,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.tools.internal.ws.WsImport"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,orbd,\
+    -DJAVA_ARGS='{ 	"-J-ms8m"$(COMMA) \
+			"-J-Dcom.sun.CORBA.activation.DbDir=./orb.db"$(COMMA) \
+			"-J-Dcom.sun.CORBA.activation.Port=1049"$(COMMA) \
+			"-J-Dcom.sun.CORBA.POA.ORBServerId=1"$(COMMA) \
+			"com.sun.corba.se.impl.activation.ORBD"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,servertool,\
+    -DJAVA_ARGS='{ "-J-ms8m"$(COMMA) "com.sun.corba.se.impl.activation.ServerTool"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,tnameserv,\
+    -DJAVA_ARGS='{ 	"-J-ms8m"$(COMMA) \
+			"-J-Dcom.sun.CORBA.activation.DbDir=./orb.db"$(COMMA) \
+			"-J-Djava.util.logging.LoggingPermission=contol"$(COMMA) \
+			"-J-Dcom.sun.CORBA.POA.ORBServerId=1"$(COMMA) \
+			"com.sun.corba.se.impl.naming.cosnaming.TransientNameServer"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,pack200,\
+    -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "com.sun.java.util.jar.pack.Driver"$(COMMA) "--pack" }'))
+
+$(eval $(call SetupLauncher,rmid,\
+    -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.rmi.server.Activation"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,rmiregistry,\
+    -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.rmi.registry.RegistryImpl"$(COMMA) }'))
+
+$(eval $(call SetupLauncher,jcmd,\
+    -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.tools.jcmd.JCmd"$(COMMA) }'))
+
+ifeq ($(PLATFORM),windows)
+    $(eval $(call SetupLauncher,kinit,\
+        -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.security.krb5.internal.tools.Kinit"$(COMMA) }'))
+
+    $(eval $(call SetupLauncher,klist,\
+        -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.security.krb5.internal.tools.Klist"$(COMMA) }'))
+
+    $(eval $(call SetupLauncher,ktab,\
+        -DJAVA_ARGS='{	"-J-ms8m"$(COMMA) "sun.security.krb5.internal.tools.Ktab"$(COMMA) }'))
+endif
+
+##########################################################################################
+# The order of the object files on the link command line affects the size of the resulting
+# binary (at least on linux) which causes the size to differ between old and new build.
+UNPACKEXE_ZIPOBJS = 	$(JDK_OUTPUTDIR)/newobjs/libzip/zcrc32$(OBJ_SUFFIX) \
+		     	$(JDK_OUTPUTDIR)/newobjs/libzip/deflate$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/trees$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/zadler32$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/compress$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/zutil$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/inflate$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/infback$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/inftrees$(OBJ_SUFFIX) \
+			$(JDK_OUTPUTDIR)/newobjs/libzip/inffast$(OBJ_SUFFIX)
+
+$(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
+		EXCLUDE_FILES:=jni.cpp,\
+		LANG:=C++,\
+		CFLAGS:=$(CXXFLAGS_JDKEXE) $(CXX_O_FLAG_NORM) \
+			 -DFULL \
+			 -I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5,\
+		CFLAGS_release:=-DPRODUCT,\
+		CFLAGS_linux:=-fPIC,\
+		LDFLAGS:=$(LDFLAGS_JDKEXE) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libunpack/mapfile-vers-unpack200) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN), \
+		LDFLAGS_SUFFIX:=$(UNPACKEXE_ZIPOBJS) $(LIBCXX),\
+		LDFLAGS_SUFFIX_solaris:=-lc,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/unpackexe,\
+		EXE:=$(JDK_OUTPUTDIR)/newobjs/unpack200$(EXE_SUFFIX),\
+		VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
+		RC_FLAGS:=$(RC_FLAGS)\
+			  /D "JDK_FNAME=unpack200.exe" \
+			  /D "JDK_INTERNAL_NAME=unpack200" \
+			  /D "JDK_FTYPE=0x1L"))
+
+$(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX): $(UNPACKEXE_ZIPOBJS)
+
+ifeq ($(HOST_OS_API),winapi)
+    UNPACK_MANIFEST:=$(JDK_OUTPUTDIR)/newobjs/unpackexe/unpack200.exe.manifest
+    IMVERSIONVALUE=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VERSION).$(COOKED_BUILD_NUMBER)
+    SED_ALL_MANIFEST=$(SED) -e 's%IMVERSION%$(IMVERSIONVALUE)%g'
+
+    $(UNPACK_MANIFEST): $(JDK_TOPDIR)/src/windows/resource/unpack200_proto.exe.manifest
+	$(CAT) $< | $(SED_ALL_MANIFEST) > $@
+
+    # Adding a dependency to spec file might be a good idea here, to force rerun on version change.
+    $(JDK_OUTPUTDIR)/newobjs/unpackexe/unpack200.exe.manifest.mt: $(UNPACK_MANIFEST)
+	$(MT) /manifest $< /outputresource:$(JDK_OUTPUTDIR)/newobjs/unpack200$(EXE_SUFFIX);#1
+	touch $@
+
+    $(JDK_OUTPUTDIR)/newobjs/unpackexe/unpack200.exe.manifest.mt: $(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX)
+endif
+
+BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin/unpack200$(EXE_SUFFIX)
+
+##########################################################################################
+
+#
+# The java-rmi.cgi script in bin/ only gets delivered in certain situations
+#
+JAVA_RMI_CGI:=$(JDK_OUTPUTDIR)/bin/java-rmi.cgi
+ifeq ($(PLATFORM), linux)
+  BUILD_LAUNCHERS += $(JAVA_RMI_CGI)
+endif
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    BUILD_LAUNCHERS += $(JAVA_RMI_CGI)
+  endif
+endif
+
+# TODO: 
+# On windows java-rmi.cgi shouldn't be bundled since Java 1.2, but has been built all
+# this time anyway. Since jdk6, it has been built from the wrong source and resulted
+# in a copy of the standard java launcher named "java-rmi.exe" ending up in the final
+# images bin dir. This weird behavior is mimicked here in the converted makefiles for
+# now. Should probably just be deleted.
+# http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6512052
+ifeq ($(HOST_OS_API),winapi)
+    $(eval $(call SetupLauncher,java-rmi,\
+        -DEXPAND_CLASSPATH_WILDCARDS,\
+        $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/java/main/java/mapfile-$(ARCH))))
+
+    $(JAVA_RMI_CGI): $(JDK_OUTPUTDIR)/newobjs/java-rmi$(EXE_SUFFIX)
+	$(CP) $< $@
+
+    BUILD_LAUNCHERS += $(JAVA_RMI_CGI)
+else
+    $(JAVA_RMI_CGI): $(JDK_TOPDIR)/src/solaris/bin/java-rmi.cgi.sh
+	$(CP) $< $@
+	$(CHMOD) a+x $@
+endif
+
+##########################################################################################
+
+$(JDK_OUTPUTDIR)/bin/% : $(JDK_OUTPUTDIR)/newobjs/%
+	echo Copying $(@F)
+	$(CP) $< $@
+
+$(BUILD_LAUNCHERS) : $(JDK_TOPDIR)/makefiles/CompileLaunchers.gmk
+
+all: $(BUILD_LAUNCHERS)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CompileNativeLibraries.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,608 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+defalt: all
+
+include $(SPEC)
+include MakeBase.gmk
+include NativeCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+
+# Copy files (can now depend on $(COPY_FILES))
+include CopyFiles.gmk
+
+# Include the javah generated headers.
+CFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers
+CXXFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers
+
+# Put the libraries here. Different locations for different host apis.
+ifeq ($(HOST_OS_API),posix)
+    ifneq ($(HOST_OS),macosx)
+        INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib/$(LIBARCH)
+        LIBARCHDIR=$(LIBARCH)/
+    else
+        INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib
+        LIBARCHDIR=/
+    endif
+else
+    INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/bin
+endif
+
+$(INSTALL_LIBRARIES_HERE)/%$(SHARED_LIBRARY_SUFFIX) : $(JDK_OUTPUTDIR)/newobjs/%$(SHARED_LIBRARY_SUFFIX)
+	echo Copying $(@F)
+	$(CP) $< $@
+
+BUILD_LIBRARIES=
+
+# TODO: Temporary until awt is converted:
+# OBJDIRNAME is the name of the directory where the object code is to
+#   be placed. It's name depends on whether the data model architecture 
+#   is 32-bit or not.
+ifneq ($(ARCH_DATA_MODEL), 32)
+  OBJDIRNAME  = obj$(ARCH_DATA_MODEL)$(OBJDIRNAME_SUFFIX)
+else
+  OBJDIRNAME  = obj$(OBJDIRNAME_SUFFIX)
+endif
+
+##########################################################################################
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBZIP,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/java/util/zip,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
+                        -I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5 \
+		        -I$(JDK_TOPDIR)/src/share/native/java/io \
+                        -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/io,\
+		CFLAGS_posix:=-DUSE_MMAP,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(EXPORT_ZIP_FUNCS) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libzip/mapfile-vers),\
+		LDFLAGS_winapi:=-export:ZIP_Open -export:ZIP_Close -export:ZIP_FindEntry \
+                                -export:ZIP_ReadEntry -export:ZIP_GetNextEntry,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libzip,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+LIBUNPACK_LIB_FILE := $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
+		EXCLUDE_FILES:=main.cpp,\
+		LANG:=C++,\
+		CFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
+			 -DNO_ZLIB -DUNPACK_JNI -DFULL,\
+		CFLAGS_release:=-DPRODUCT,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB)\
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libunpack/mapfile-vers) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_winapi:=-map:$(JDK_OUTPUTDIR)/newobjs/unpack.map /debug,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		LDFLAGS_SUFFIX_posix:=$(LIBCXX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libunpack,\
+		LIB:=$(LIBUNPACK_LIB_FILE),\
+		VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
+		RC_FLAGS:=$(RC_FLAGS)\
+			  /D "JDK_FNAME=unpack.dll" \
+			  /D "JDK_INTERNAL_NAME=unpack" \
+			  /D "JDK_FTYPE=0x2L"))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)
+
+ifeq ($(HOST_OS_API),winapi)
+    $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.map: $(LIBUNPACK_LIB_FILE)
+	echo Copying $(@F)
+	$(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.map,$<) $@
+
+    $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.pdb: $(LIBUNPACK_LIB_FILE)
+	echo Copying $(@F)
+	$(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.pdb,$<) $@
+endif
+
+##########################################################################################
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBVERIFY,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/common,\
+		EXCLUDE_FILES:=check_version.c jdk_util.c jio.c jni_util.c verify_stub.c,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) ${C_O_FLAG_HI} $(SHARED_LIBRARY_FLAGS), \
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libverify/mapfile-vers),\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libverify,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) ${C_O_FLAG_NONE}\
+			-I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
+		CFLAGS_winapi_debug:=-DLOGGING,\
+		ARFLAGS:=$(ARFLAGS),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libfdlibm,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+LIBATTACH_EXCLUDE_FILES:=
+ifneq ($(PLATFORM),solaris)
+    LIBATTACH_EXCLUDE_FILES+=SolarisVirtualMachine.c
+endif
+ifneq ($(PLATFORM),linux)
+    LIBATTACH_EXCLUDE_FILES+=LinuxVirtualMachine.c
+endif
+ifneq ($(PLATFORM),macosx)
+    LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c
+endif
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\
+                SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/tools/attach,\
+		EXCLUDE_FILES:=$(LIBATTACH_EXCLUDE_FILES),\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libattach/mapfile-$(PLATFORM)) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_solaris:=-ldoor,\
+		LDFLAGS_winapi:=psapi.lib advapi32.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libattach,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBDT_SOCKET,\
+                SRC:=$(JDK_TOPDIR)/src/share/transport/socket \
+			$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/socket,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
+                        -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(PLATFORM) \
+                        -I$(JDK_TOPDIR)/src/share/transport/socket \
+		        -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/socket \
+                        -I$(JDK_TOPDIR)/src/share/back/export \
+                        -I$(JDK_TOPDIR)/src/share/back,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libdt_socket/mapfile-vers),\
+		LDFLAGS_SUFFIX_linux:=-lpthread,\
+		LDFLAGS_SUFFIX_solaris:=-lnsl -lsocket,\
+		LDFLAGS_SUFFIX_winapi:=-export:jdwpTransport_OnLoad ws2_32.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libdt_socket,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+ifeq ($(HOST_OS_API),winapi)
+
+  $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SHMEM,\
+                SRC:= $(JDK_TOPDIR)/src/share/native/com/sun/tools/jdi \
+			$(JDK_TOPDIR)/src/share/transport/shmem \
+			$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/shmem,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
+                        -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(PLATFORM) \
+                        -I$(JDK_TOPDIR)/src/share/transport/shmem \
+		        -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/shmem \
+                        -I$(JDK_TOPDIR)/src/share/back/export, \
+		LDFLAGS:=$(LDFLAGS_JDKLIB),\
+		LDFLAGS_winapi:=-export:jdwpTransport_OnLoad,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libdt_shmem,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)dt_shmem$(SHARED_LIBRARY_SUFFIX)))
+
+  BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)dt_shmem$(SHARED_LIBRARY_SUFFIX)
+
+endif # PLATFORM
+
+##########################################################################################
+# JDWP_LOGGING causes log messages to be compiled into the library. These reference the 
+# __FILE__ macro which here expands to the absolute path of the file while the old build 
+# system used a relative path. This causes the binaries to differ in size.
+$(eval $(call SetupNativeCompilation,BUILD_LIBJDWP,\
+                SRC:=$(JDK_TOPDIR)/src/share/back $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/back,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) -DJDWP_LOGGING $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
+		 -I$(JDK_TOPDIR)/src/share/transport/export \
+                 -I$(JDK_TOPDIR)/src/share/back/export \
+                 -I$(JDK_TOPDIR)/src/share/npt \
+                 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt \
+                 -I$(JDK_TOPDIR)/src/share/back \
+                 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/back \
+		 -I$(JDK_OUTPUTDIR)/gensrc_jdwp_headers,\
+		LDFLAGS:=$(filter-out -ljava,$(LDFLAGS_JDKLIB)) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libjdwp/mapfile-vers),\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		LDFLAGS_SUFFIX_linux:=-ldl,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjdwp,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+ifneq ($(PLATFORM),solaris)
+   LIBJAAS_EXCLUDE_FILES:=Solaris.c
+endif
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBJAAS,\
+                SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/com/sun/security/auth/module,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
+		LDFLAGS:=$(filter-out -ljava,$(LDFLAGS_JDKLIB)) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_winapi:=netapi32.lib user32.lib mpr.lib advapi32.lib,\
+		LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libjaas/mapfile-vers),\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		EXCLUDE_FILES:=$(LIBJAAS_EXCLUDE_FILES),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjaas,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)
+
+# Oddly enough, it is called jaas_nt.dll under winapi and libjaas_unix.so under posix.
+ifeq ($(PLATFORM),windows)
+    $(INSTALL_LIBRARIES_HERE)/jaas_nt.dll : $(JDK_OUTPUTDIR)/newobjs/jaas.dll
+	echo Copying $(@F)
+	$(CP) $< $@
+    BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/jaas_nt.dll
+else
+    $(INSTALL_LIBRARIES_HERE)/libjaas_unix$(SHARED_LIBRARY_SUFFIX) : $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)
+	echo Copying $(@F)
+	$(CP) $< $@
+    BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/libjaas_unix$(SHARED_LIBRARY_SUFFIX)
+endif
+
+##########################################################################################
+
+ifeq ($(HOST_OS_API),posix)
+  # TODO make this work on macosx
+  ifneq ($(HOST_OS),macosx)
+#
+# NOTE: Change -L flag to point to new lib location after converting libnio. Also
+#       add dependency on nio from sctp.
+    $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP,\
+                SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/ch/sctp,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
+			-I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
+			-I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \
+			-I$(JDK_TOPDIR)/src/share/native/java/net \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/ch \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/net,\
+		CFLAGS_linux:=-Werror,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) -L$(JDK_OUTPUTDIR)/lib/$(LIBARCHDIR)\
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libsctp/mapfile-vers) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_SUFFIX_linux:=-lpthread,\
+		LDFLAGS_SUFFIX_posix:=-ldl -lnio -lnet,\
+		LDFLAGS_SUFFIX_solaris:=-lsocket,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		INCLUDE_FILES:=SctpNet.c SctpChannelImpl.c SctpServerChannelImpl.c,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libsctp,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX)))
+
+    BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX)
+  endif
+endif
+
+##########################################################################################
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBJSDT,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace\
+			$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/tracing/dtrace,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
+			-I$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libjsdt/mapfile-vers) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) -ldl,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjsdt,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+ifdef OPENJDK
+    # TODO: Update awt lib path when awt is converted
+    $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms \
+		     $(JDK_TOPDIR)/src/share/native/sun/java2d/,\
+		INCLUDE_FILES:=cmscam02.c cmscgats.c cmscnvrt.c cmserr.c \
+			       cmsgamma.c cmsgmt.c cmsintrp.c cmsio0.c \
+			       cmsio1.c cmslut.c cmsmd5.c cmsmtrx.c \
+			       cmsnamed.c cmsopt.c cmspack.c cmspcs.c \
+			       cmsplugin.c cmsps2.c cmssamp.c cmssm.c \
+			       cmstypes.c cmsvirt.c cmswtpnt.c cmsxform.c \
+			       LCMS.c,\
+		LANG:=C,\
+		CFLAGS:=$(filter-out -xc99=%none,$(CFLAGS_JDKLIB)) $(C_O_FLAG_NORM) \
+			$(SHARED_LIBRARY_FLAGS) \
+			-I$(JDK_TOPDIR)/src/share/native/sun/java2d \
+			-I$(JDK_TOPDIR)/src/share/native/sun/awt/debug,\
+		CFLAGS_solaris:=-xc99=no_lib,\
+		CFLAGS_winapi:=-DCMS_IS_WINDOWS_,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/liblcms/mapfile-vers),\
+		LDFLAGS_posix:=-L$(JDK_OUTPUTDIR)/lib/$(LIBARCHDIR)xawt,\
+		LDFLAGS_solaris:=/usr/lib$(ISA_DIR)/libm.so.2,\
+		LDFLAGS_winapi:=$(JDK_OUTPUTDIR)/tmp/sun/sun.awt/awt/$(OBJDIRNAME)/awt.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		LDFLAGS_SUFFIX_posix:=-lawt,\
+		LDFLAGS_SUFFIX_linux:=-lm,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/liblcms,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)lcms$(SHARED_LIBRARY_SUFFIX)))
+
+    BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)lcms$(SHARED_LIBRARY_SUFFIX)
+endif
+
+##########################################################################################
+
+ifdef OPENJDK
+    BUILD_LIBJPEG_MAPFILE := makefiles/mapfiles/libjpeg/mapfile-vers
+else
+    BUILD_LIBJPEG_MAPFILE := makefiles/mapfiles/libjpeg/mapfile-vers-closed
+    BUILD_LIBJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg
+    BUILD_LIBJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC)
+endif
+
+ifeq ($(PLATFORM), solaris)
+    ifneq ($(ARCH), amd64)
+        BUILD_LIBJPEG_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/reorder-$(ARCH)
+        $(JDK_OUTPUTDIR)/newobjs/libjpeg/mapfile-vers : $(JDK_TOPDIR)/$(BUILD_LIBJPEG_MAPFILE) \
+							$(BUILD_LIBJPEG_REORDER)
+		$(MKDIR) -p $(@D)
+		$(CAT) $(JDK_TOPDIR)/$(BUILD_LIBJPEG_MAPFILE) > $@
+		$(SED) -e 's=OUTPUTDIR=$(JDK_OUTPUTDIR)=' $(BUILD_LIBJPEG_REORDER) >> $@
+        LIBJPEG_MAPFILE:=$(JDK_OUTPUTDIR)/newobjs/libjpeg/mapfile-vers
+
+        $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX): \
+			$(JDK_OUTPUTDIR)/newobjs/libjpeg/mapfile-vers
+    endif
+endif
+
+# Suppress gcc warnings like "variable might be clobbered by 'longjmp'
+# or 'vfork'": this warning indicates that some variable is placed to
+# a register by optimized compiler and it's value might be lost on longjmp().
+# Recommended way to avoid such warning is to declare the variable as
+# volatile to prevent the optimization. However, this approach does not
+# work because we have to declare all variables as volatile in result.
+#ifndef CROSS_COMPILE_ARCH
+#    CC_43_OR_NEWER := \
+#        $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \
+#              \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) )
+#    ifeq ($(CC_43_OR_NEWER),1)
+#        BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered
+#    endif
+#endif
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBJPEG,\
+                SRC:=$(BUILD_LIBJPEG_CLOSED_SRC) \
+		     $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) \
+			$(BUILD_LIBJPEG_CLOSED_INCLUDES) \
+			-I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\
+		CFLAGS_solaris:=-xF,\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,$(BUILD_LIBJPEG_MAPFILE))\
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_linux:=-ldl,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjpeg,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+ifndef OPENJDK
+    FONT_HEADERS := -I$(CLOSED_SRC)/share/native/$(PKGDIR)/t2k
+    BUILD_LIBFONTMANAGER_MAPFILE := makefiles/mapfiles/libfontmanager/mapfile-vers
+    LIBFONTMANAGER_EXCLUDE_FILES += freetypeScaler.c
+else
+    FONT_HEADERS := $(FREETYPE2_CFLAGS)
+    BUILD_LIBFONTMANAGER_MAPFILE := makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk
+    BUILD_LIBFONTMANAGER_FONTLIB := $(FREETYPE2_LIBS)
+endif
+
+ifeq ($(PLATFORM),windows)
+    LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
+				    X11TextRenderer.c
+else
+    LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \
+				    lcdglyph.c
+endif
+
+BUILD_LIBFONTMANAGER_CFLAGS_COMMON := $(SHARED_LIBRARY_FLAGS) \
+			-DLE_STANDALONE -DHEADLESS \
+			$(FONT_HEADERS) \
+			-I$(JDK_TOPDIR)/src/share/native/sun/font \
+			-I$(JDK_TOPDIR)/src/share/native/sun/font/layout \
+			-I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt \
+			-I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
+			-I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
+			-I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
+			-I$(JDK_TOPDIR)/src/share/native/sun/java2d
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
+                SRC:=$(JDK_TOPDIR)/src/share/native/sun/font\
+		     $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/font,\
+		EXCLUDE_FILES:=$(LIBFONTMANAGER_EXCLUDE_FILES) \
+			       AccelGlyphCache.c,\
+		LANG:=C++,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
+		CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
+		CFLAGS_posix:=$(C_O_FLAG_HI),\
+		CXXFLAGS_posix:=$(CXX_O_FLAG_HI),\
+		CFLAGS_windows=$(C_O_FLAG_NORM)\
+				-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows \
+				-DCC_NOEX, \
+		LDFLAGS:=$(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,$(BUILD_LIBFONTMANAGER_MAPFILE)) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_solaris:=-L$(JDK_OUTPUTDIR)/lib/$(LIBARCHDIR)headless,\
+		LDFLAGS_windows:=advapi32.lib user32.lib gdi32.lib $(JDK_OUTPUTDIR)/tmp/sun/sun.awt/awt/$(OBJDIRNAME)/awt.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) \
+				$(BUILD_LIBFONTMANAGER_FONTLIB),\
+		LDFLAGS_SUFFIX_linux:=-lawt $(LIBM) $(LIBCXX),\
+		LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt -lc $(LIBM) $(LIBCXX),\
+		LDFLAGS_SUFFIX_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libfontmanager,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)))
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)
+
+##########################################################################################
+
+ifndef OPENJDK
+
+#    ifeq ($(PLATFORM), linux)
+#        ifeq ("$(CC_VER_MAJOR)", "3")
+#            OTHER_LDLIBS  += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic
+#        endif                           
+#    endif
+#
+# The resulting size of the t2k lib file is (at least on linux) dependant on the order of 
+# the input .o files. Because of this the new build will differ in size to the old build.
+    BUILD_LIBT2K_CFLAGS_COMMON:=-I$(JDK_TOPDIR)/src/share/native/sun/font \
+		            -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
+		            -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \
+		            -I$(JDK_TOPDIR)/src/share/share/native/sun/font \
+		            -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/font \
+		            -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
+		            -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
+		            -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
+		            -I$(JDK_TOPDIR)/src/share/native/sun/java2d
+
+    $(eval $(call SetupNativeCompilation,BUILD_LIBT2K,\
+                SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/font \
+		     $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
+		     $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k/ttHints,\
+		EXCLUDE_FILES:=orion.c,\
+		LANG:=C++,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON) $(C_O_FLAG_HI),\
+		CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON) $(CXX_O_FLAG_HI),\
+		CFLAGS_windows=-DCC_NOEX, \
+		CXXFLAGS_windows=-DCC_NOEX, \
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libt2k/mapfile-vers) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_windows:=user32.lib $(JDK_OUTPUTDIR)/newobjs/fontmanager.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		LDFLAGS_SUFFIX_linux:=$(LIBCXX) $(LIBM) -L$(INSTALL_LIBRARIES_HERE) -lfontmanager,\
+		LDFLAGS_SUFFIX_solaris:=$(LIBCXX) $(LIBM) -L$(INSTALL_LIBRARIES_HERE) -lfontmanager -lawt \
+					-lawt_xawt,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libt2k,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX)))
+
+    # t2k is linked against fontmanager
+    $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX): \
+	$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)
+
+    BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX)
+endif
+
+##########################################################################################
+
+ifeq ($(PLATFORM), windows)
+    ifeq ($(ARCH_DATA_MODEL), 32)
+        KERNEL32_LIB := kernel32.lib
+    endif
+    $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
+                SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows,\
+		INCLUDE_FILES:=jawt.cpp,\
+		LANG:=C++,\
+		CFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) \
+			-EHsc -DUNICODE -D_UNICODE \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows \
+		        -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
+		        -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
+			-I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
+			-I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/windows, \
+		LDFLAGS:=$(LDFLAGS_JDKLIB) $(KERNEL32_LIB) \
+			 advapi32.lib $(JDK_OUTPUTDIR)/tmp/sun/sun.awt/awt/$(OBJDIRNAME)/awt.lib,\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjawt,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)))
+
+$(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX): \
+		$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)
+	echo Copying $(@F)
+	$(CP) $(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) $@	
+
+BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX)
+
+else # PLATFORM not windows
+
+    ifndef BUILD_HEADLESS_ONLY
+        MAWT_AWT_LIB =-lawt_xawt
+    else
+        MAWT_AWT_LIB =-lawt_headless
+        HEADLESS_CFLAG += -DHEADLESS
+    endif
+
+    $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
+                SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt,\
+		INCLUDE_FILES:=jawt.c,\
+		LANG:=C,\
+		CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM), \
+		CFLAGS_linux:=$(HEADLESS_CFLAG),\
+		LDFLAGS:=$(LDFLAGS_JDKLIB) \
+			 $(call SET_SHARED_LIBRARY_MAPFILE,makefiles/mapfiles/libjawt/mapfile-vers) \
+			 $(call SET_SHARED_LIBRARY_ORIGIN),\
+		LDFLAGS_solaris:=-L/usr/openwin/sfw/lib$(ISA_DIR) -L/usr/openwin/lib$(ISA_DIR),\
+		LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(MAWT_AWT_LIB) -lawt,\
+		LDFLAGS_SUFFIX_solaris:=-lXrender,\
+		BIN:=$(JDK_OUTPUTDIR)/newobjs/libjawt,\
+		LIB:=$(JDK_OUTPUTDIR)/newobjs/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)))
+endif # PLATFORM
+
+BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)
+
+
+##########################################################################################
+
+all: $(COPY_FILES) $(BUILD_LIBRARIES)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CopyFiles.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,232 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+INCLUDEDIR = $(JDK_OUTPUTDIR)/include
+# TODO: Platform dir needs to be "win32" on windows /erikj
+PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM)
+
+#
+# Copy exported header files to outputdir.
+#
+H_TARGET_FILES =$(INCLUDEDIR)/jdwpTransport.h		\
+		$(INCLUDEDIR)/jni.h 			\
+		$(INCLUDEDIR)/jvmti.h			\
+		$(INCLUDEDIR)/jvmticmlr.h		\
+		$(INCLUDEDIR)/classfile_constants.h	\
+		$(INCLUDEDIR)/jawt.h			\
+		$(PLATFORM_INCLUDE)/jni_md.h		\
+		$(PLATFORM_INCLUDE)/jawt_md.h
+
+$(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+$(PLATFORM_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/javavm/export/%.h
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES = $(H_TARGET_FILES)
+
+##########################################################################################
+
+LIBDIR = $(JDK_OUTPUTDIR)/lib
+SERVICETAG_LIBDIR = $(LIBDIR)/servicetag
+
+$(SERVICETAG_LIBDIR)/jdk_header.png: $(JDK_TOPDIR)/src/share/classes/com/sun/servicetag/resources/jdk_header.png
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+	$(CHMOD) 444 $@
+
+COPY_FILES += $(SERVICETAG_LIBDIR)/jdk_header.png
+
+##########################################################################################
+
+MGMT_LIBDIR = $(LIBDIR)/management
+MGMT_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/management
+MGMT_SRC_FILES = $(wildcard $(MGMT_LIB_SRC)/*)
+MGMT_TARGET_FILES = $(subst $(MGMT_LIB_SRC),$(MGMT_LIBDIR),$(MGMT_SRC_FILES))
+
+$(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+	$(CHMOD) 644 $@
+
+$(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/%
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+	$(CHMOD) 444 $@
+
+COPY_FILES += $(MGMT_TARGET_FILES)
+
+##########################################################################################
+
+LOGGING_LIB_SRC = $(JDK_TOPDIR)/src/share/lib
+
+$(LIBDIR)/logging.properties: $(LOGGING_LIB_SRC)/logging.properties
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(LIBDIR)/logging.properties
+
+##########################################################################################
+#
+# Copy property files from sun/print to LIBDIR
+#
+PSFONTPROPFILE_SRC_DIR = $(JDK_TOPDIR)/src/share/classes/sun/print
+PSFONTPROPFILE_SRCS = $(wildcard $(PSFONTPROPFILE_SRC_DIR)/*.properties*)
+PSFONTPROPFILE_TARGET_FILES = $(subst $(PSFONTPROPFILE_SRC_DIR),$(LIBDIR),$(PSFONTPROPFILE_SRCS))
+
+$(PSFONTPROPFILE_TARGET_FILES): $(PSFONTPROPFILE_SRCS)
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES)
+
+##########################################################################################
+#
+# Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR
+#
+PLATFORM_LIB_SRC = $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib
+
+$(LIBDIR)/flavormap.properties: $(PLATFORM_LIB_SRC)/flavormap.properties
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(LIBDIR)/flavormap.properties
+
+CURSORS_DEST_DIR = $(LIBDIR)/images/cursors
+CURSORS_PLATFORM_LIB_SRC = $(PLATFORM_LIB_SRC)/images/cursors
+
+$(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_PLATFORM_LIB_SRC)/cursors.properties
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties
+
+CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors
+ifeq ($(PLATFORM), windows)
+CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif)
+else # PLATFORM
+CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif)
+endif # PLATFORM
+CURSORS_TARGET_FILES =  $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES))
+
+$(CURSORS_TARGET_FILES): $(CURSORS_SRC_FILES)
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(CURSORS_TARGET_FILES)
+
+##########################################################################################
+
+CONTENT_TYPES_SRC=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/lib
+
+$(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(LIBDIR)/content-types.properties
+
+##########################################################################################
+
+ICCPROFILE_DEST_DIR := $(LIBDIR)/cmm
+
+ifdef OPENJDK
+    ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/share/lib/cmm/lcms
+else 
+    ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/cmm/kcms
+endif
+
+ICCPROFILE_SRCS:=$(wildcard $(ICCPROFILE_SRC_DIR)/*.pf)
+ICCPROFILE_TARGET_FILES:=$(subst $(ICCPROFILE_SRC_DIR),$(ICCPROFILE_DEST_DIR),$(ICCPROFILE_SRCS))
+
+$(ICCPROFILE_DEST_DIR)%.pf: $(ICCPROFILE_SRC_DIR)%.pf
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+	$(CHMOD) 444 $@
+
+COPY_FILES += $(ICCPROFILE_TARGET_FILES)
+
+##########################################################################################
+
+#make sure freetype dll will be available at runtime as well as link time
+#
+#NB: Default freetype build system uses -h linker option and 
+#   result .so contains hardcoded library name that is later 
+#   used for adding dependencies to other objects 
+#   (e.g. libfontmanager.so).
+#   
+#   It is not obvious how to extract that hardcoded name (libfreetype.so.6)
+#   without overcomplicating logic here.
+#   To workaround this we hardcode .6 suffix for now.
+#
+#   Note that .so.6 library will not be found by System.loadLibrary()
+#        but fortunately we need to load FreeType library explicitly 
+#        on windows only  
+#
+#TODO: rework this to avoid hardcoding library name in the makefile
+#
+ifdef OPENJDK
+    ifeq ($(PLATFORM), windows)
+        FREETYPE_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype)
+    else 
+        ifeq ($(USING_SYSTEM_FT_LIB), false)
+            FREETYPE_LIB = $(JDK_OUTPUTDIR)/lib/$(LIBARCH)/$(call SHARED_LIBRARY,freetype).6
+        endif
+    endif 
+
+    $(FREETYPE_LIB):
+	$(CP) $(FREETYPE2_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@
+
+    COPY_FILES += $(FREETYPE_LIB)
+endif
+
+##########################################################################################
+
+# Copy msvcr100.dll on windows
+
+ifeq ($(PLATFORM),windows)
+    MSVCRNN_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCRNN_DLL))
+    $(MSVCRNN_TARGET): $(MSVCRNN_DLL)
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+    COPY_FILES += $(MSVCRNN_TARGET)
+endif
+
+##########################################################################################
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CopyIntoClasses.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,150 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Copy icu and _dict files used by the text break iterator
+
+COPY_PATTERNS = .icu _dict
+
+# Copy config files for com.sun.org.apache.xml.internal.security
+
+XMLSECURITY_RESOURCEDIR = $(JDK_TOPDIR)/src/share/classes/com/sun/org/apache/xml/internal/security/resource
+COPY_FILES += \
+  $(XMLSECURITY_RESOURCEDIR)/config.dtd \
+  $(XMLSECURITY_RESOURCEDIR)/config.xml
+
+# Copy sun/tools related files into the classes directory.
+
+# Extra jstat files
+JSTAT_RESOURCEDIR = $(JDK_TOPDIR)/src/share/classes/sun/tools/jstat/resources
+COPY_FILES += \
+  $(JSTAT_RESOURCEDIR)/jstat_options \
+  $(JSTAT_RESOURCEDIR)/jstat_unsupported_options
+
+# Extra jhat files 
+JHAT_RESOURCEDIR = $(JDK_TOPDIR)/src/share/classes/com/sun/tools/hat/resources
+COPY_FILES += \
+  $(JHAT_RESOURCEDIR)/hat.js \
+  $(JHAT_RESOURCEDIR)/oqlhelp.html \
+  $(JHAT_RESOURCEDIR)/platform_names.txt
+
+# Extra jrunscript files
+JRUNSCRIPT_RESOURCEDIR = $(JDK_TOPDIR)/src/share/classes/com/sun/tools/script/shell
+COPY_FILES += \
+  $(JRUNSCRIPT_RESOURCEDIR)/init.js \
+  $(JRUNSCRIPT_RESOURCEDIR)/messages.properties 
+
+# Extra jvmstat files
+COPY_FILES += \
+  $(JDK_TOPDIR)/src/share/classes/sun/jvmstat/perfdata/resources/aliasmap
+
+# Servicetag resources
+SERVICETAG_RESOURCES_DIR = $(JDK_TOPDIR)/src/share/classes/com/sun/servicetag/resources
+COPY_FILES += \
+  $(SERVICETAG_RESOURCES_DIR)/product_registration.xsd \
+  $(SERVICETAG_RESOURCES_DIR)/register.html \
+  $(SERVICETAG_RESOURCES_DIR)/register_ja.html \
+  $(SERVICETAG_RESOURCES_DIR)/register_zh_CN.html \
+  $(wildcard  $(SERVICETAG_RESOURCES_DIR)/javase_*.properties)
+
+# JConsole resources
+JCONSOLE_RESOURCES_DIR = $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/resources
+COPY_FILES += \
+  $(wildcard $(JCONSOLE_RESOURCES_DIR)/*.png) \
+  $(wildcard $(JCONSOLE_RESOURCES_DIR)/*.gif)
+
+# Print resources
+PRINT_RESOURCES_DIR = $(JDK_TOPDIR)/src/share/classes/sun/print/resources
+COPY_FILES += \
+  $(wildcard $(PRINT_RESOURCES_DIR)/*.png)
+
+# IDN resources
+COPY_FILES += \
+  $(JDK_TOPDIR)/src/share/classes/sun/net/idn/uidna.spp
+
+##########################################################################################
+#
+# Copy the META-INF/services configuration files that are scattered around the source tree
+# into classes/META-INF/services. Be aware that META-INF directories that are located at a
+# source root (.../classes/META-INF) are automatically copied verbatim by the
+# SetupJavaCompilation macro. 
+#
+# Any other META-INF/services configuration file is found here and platform specific comments
+# are uncommented and the configuration file is stored in the output META-INF directory.
+
+# Make sure the output directory is created.
+$(shell $(MKDIR) -p $(JDK_OUTPUTDIR)/newclasses/META-INF/services)
+# Find all META-INF/services/* files
+ALL_META-INF_DIRS_share:=$(shell $(FIND) $(JDK_TOPDIR)/src/share/classes -type d -a -name META-INF)
+ALL_META-INF_DIRS_hostapi:=$(shell $(FIND) $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes -type d -a -name META-INF)
+# Platform specific overrides shared
+ifneq ($(ALL_META-INF_DIRS_hostapi),)
+    ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_hostapi) \
+	$(filter-out %$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes%,%,$(ALL_META-INF_DIRS_hostapi)),\
+		$(ALL_META-INF_DIRS_share))
+else
+    ALL_META-INF_DIRS:=$(ALL_META-INF_DIRS_share)
+endif
+# Filter out META-INF dirs that shouldn't be included
+ALL_META-INF_DIRS:=$(filter-out %sun/nio/cs/ext/META-INF,$(ALL_META-INF_DIRS))
+ifdef OPENJDK
+  ALL_META-INF_DIRS:=$(filter-out %com/sun/script/javascript/META-INF,$(ALL_META-INF_DIRS))
+endif
+
+SRC_SERVICES_FILES:=$(wildcard $(addsuffix /services/*,$(ALL_META-INF_DIRS)))
+ifdef OPENJDK
+    SRC_SERVICES_FILES:=$(filter-out %sun/dc/META-INF/services/sun.java2d.pipe.RenderingEngine,$(SRC_SERVICES_FILES))
+    SRC_SERVICES_FILES:=$(filter-out %sun/java2d/cmm/kcms/META-INF/services/sun.java2d.cmm.PCMM,$(SRC_SERVICES_FILES))
+else
+    SRC_SERVICES_FILES:=$(filter-out %sun/java2d/pisces/META-INF/services/sun.java2d.pipe.RenderingEngine,$(SRC_SERVICES_FILES))
+    SRC_SERVICES_FILES:=$(filter-out %sun/java2d/cmm/lcms/META-INF/services/sun.java2d.cmm.PCMM,$(SRC_SERVICES_FILES))
+endif
+# The number of services files are relatively few. If the increase in numbers, then
+# we have to use ListPathsSafelyNow here.
+# Change $(JDK_TOPDIR)/src/.../META-INF/services/yyyy into $(JDK_OUTPUTDIR)/newclasses/META-INF/services/yyyy
+# The \n in the printf command is needed to make sed work on Solaris.
+OUT_SERVICES_FILES:=$(addprefix $(JDK_OUTPUTDIR)/newclasses/META-INF/services/,\
+	$(shell $(PRINTF) "$(SRC_SERVICES_FILES)\n" | $(SED) -e 's|/[^ ]*/META-INF/services/||g'))
+OUT_SERVICES_FILES_COLON:=$(addsuffix :,$(OUT_SERVICES_FILES))
+# Exception handling for print services with no META-INF directory
+SRC_SERVICES_FILES_PRINT = $(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/print/services/*)
+OUT_SERVICES_FILES_PRINT = $(addprefix $(JDK_OUTPUTDIR)/newclasses/META-INF/services/,\
+	$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/sun/print/services/%,%,\
+		$(SRC_SERVICES_FILES_PRINT)))
+OUT_SERVICES_FILES_PRINT_COLON = $(addsuffix :,$(OUT_SERVICES_FILES_PRINT))
+RULES_SERVICES_PRINT = $(join $(OUT_SERVICES_FILES_PRINT_COLON),$(SRC_SERVICES_FILES_PRINT))
+
+# Now setup the dependency rules to generate a META-INF/services/... from the correct source.
+META-INF_RULES_SERVICES:=$(RULES_SERVICES_PRINT) $(join $(OUT_SERVICES_FILES_COLON),$(SRC_SERVICES_FILES))
+# Eval the newly created rules to incorporate them into the make tree.
+define addto_meta-inf_services
+$1
+	echo Installing META-INF/services/$$(@F) 
+	$(CAT) $$< | $(SED) -e "s/^#\[$(PLATFORM)\]//" > $$@
+endef
+$(foreach i,$(META-INF_RULES_SERVICES),$(eval $(call addto_meta-inf_services,$i)))
+# Here is the generic rule, whose receipt the above rules will trigger.
+
+COPY_EXTRA += $(OUT_SERVICES_FILES)
+COPY_EXTRA += $(OUT_SERVICES_FILES_PRINT)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/CopySamples.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,75 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+
+SAMPLE_TARGET_DIR = $(JDK_OUTPUTDIR)/sample
+SAMPLE_SOURCE_DIR = $(JDK_TOPDIR)/src/share/sample
+SAMPLE_CLOSED_SOURCE_DIR = $(JDK_TOPDIR)/src/closed/share/sample
+SAMPLE_SOLARIS_SOURCE_DIR = $(JDK_TOPDIR)/src/solaris/sample
+
+# Exclude the vm directory
+SAMPLE_FIND_FILTER = -name vm -prune -o
+
+SAMPLE_SOURCE := $(shell $(FIND) $(SAMPLE_SOURCE_DIR) $(SAMPLE_FIND_FILTER) -type f -print)
+SAMPLE_TARGET := $(subst $(SAMPLE_SOURCE_DIR),$(SAMPLE_TARGET_DIR),$(SAMPLE_SOURCE))
+
+ifndef OPENJDK
+# Exclude Main.java in EbayClient dir
+    SAMPLE_CLOSED_SOURCE := $(shell $(FIND) $(SAMPLE_CLOSED_SOURCE_DIR) -type f -print | $(GREP) -v EbayClient/Main.java)
+    SAMPLE_CLOSED_TARGET := $(subst $(SAMPLE_CLOSED_SOURCE_DIR),$(SAMPLE_TARGET_DIR),$(SAMPLE_CLOSED_SOURCE))
+    SAMPLE_TARGET += $(SAMPLE_CLOSED_TARGET)
+endif
+
+ifeq ($(PLATFORM),solaris)
+    SAMPLE_SOLARIS_SOURCE := $(shell $(FIND) $(SAMPLE_SOLARIS_SOURCE_DIR) -type f -print)
+    SAMPLE_SOLARIS_TARGET := $(subst $(SAMPLE_SOLARIS_SOURCE_DIR),$(SAMPLE_TARGET_DIR),$(SAMPLE_SOLARIS_SOURCE))
+    SAMPLE_TARGET += $(SAMPLE_SOLARIS_TARGET)
+endif
+
+$(SAMPLE_TARGET_DIR)/dtrace/%: $(SAMPLE_SOLARIS_SOURCE_DIR)/dtrace/%
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+$(SAMPLE_TARGET_DIR)/webservices/%: $(SAMPLE_CLOSED_SOURCE_DIR)/webservices/%
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+$(SAMPLE_TARGET_DIR)/%: $(SAMPLE_SOURCE_DIR)/%
+	$(MKDIR) -p $(@D)
+	rm -f $@
+	$(CP) $< $@
+
+COPY_FILES += $(SAMPLE_TARGET)
+
+all: $(COPY_FILES) 
+
+.PHONY: all
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GendataBreakIterator.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,97 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Make file for generating BreakIterator data files.
+#
+
+# input
+#
+#   Notes: sun.text.resources.BreakIteratorRules no longer goes to runtime.
+#     They are used at JDK build phase in order to create $(BIFILES) which
+#     are used on runtime instead.
+#
+TEXT_SRCDIR = $(JDK_TOPDIR)/src/share/classes
+TEXT_PKG  = sun/text/resources
+TEXT_SOURCES = 	%$(TEXT_PKG)/BreakIteratorRules.java \
+		%$(TEXT_PKG)/BreakIteratorInfo.java \
+		%$(TEXT_PKG)/BreakIteratorRules_th.java \
+		%$(TEXT_PKG)/BreakIteratorInfo_th.java
+
+# Generate BreakIteratorData
+BREAK_ITERATOR_DIR = $(JDK_OUTPUTDIR)/break_iterator
+BREAK_ITERATOR_CLASSES = $(BREAK_ITERATOR_DIR)/classes
+
+# JAVAC_SOURCE_PATH_UGLY_OVERRIDE is set to isolate the compile to just those
+# two files in that directory and not get anything implicit from
+# surrounding directories which aren't jdk 6 compatible. 
+# Because we are targeting jdk 6, but the surrounding source code is jdk 7. Ugh.
+# These two files should be moved out to a build tool!
+$(eval $(call SetupJavaCompilation,BUILD_BREAKITERATOR,\
+		SETUP:=GENERATE_OLDBYTECODE,\
+		SRC:=$(TEXT_SRCDIR),\
+		JAVAC_SOURCE_PATH_UGLY_OVERRIDE:=$(TEXT_SRCDIR)/$(TEXT_PKG),\
+		INCLUDES:=$(TEXT_PKG),\
+		INCLUDE_FILES:=$(TEXT_SOURCES),\
+		BIN:=$(BREAK_ITERATOR_CLASSES)))
+
+# Generate data resource files.
+# input
+UNICODEDATA  = $(JDK_TOPDIR)/make/tools/UnicodeData/UnicodeData.txt
+
+# output
+DATA_PKG_DIR = $(JDK_OUTPUTDIR)/newclasses/sun/text/resources
+BIFILES	= 	$(DATA_PKG_DIR)/CharacterBreakIteratorData \
+		$(DATA_PKG_DIR)/WordBreakIteratorData \
+		$(DATA_PKG_DIR)/LineBreakIteratorData \
+		$(DATA_PKG_DIR)/SentenceBreakIteratorData
+BIFILES_TH =	$(DATA_PKG_DIR)/WordBreakIteratorData_th \
+		$(DATA_PKG_DIR)/LineBreakIteratorData_th
+
+$(BIFILES): $(BREAK_ITERATOR_DIR)/_the.bifiles
+$(BREAK_ITERATOR_DIR)/_the.bifiles: JAVA_FLAGS += -Xbootclasspath/p:$(BREAK_ITERATOR_CLASSES)
+$(BREAK_ITERATOR_DIR)/_the.bifiles: $(BUILD_TOOLS) $(UNICODEDATA) $(BUILD_BREAKITERATOR)
+	$(ECHO) "Generating BreakIteratorData"
+	$(MKDIR) -p  $(DATA_PKG_DIR)
+	rm -f $(BIFILES)
+	$(TOOL_GENERATEBREAKITERATORDATA) \
+		-o $(DATA_PKG_DIR) \
+		-spec $(UNICODEDATA)
+	touch $@
+
+$(BIFILES_TH): $(BREAK_ITERATOR_DIR)/_the.bifiles_th
+$(BREAK_ITERATOR_DIR)/_the.bifiles_th: JAVA_FLAGS += -Xbootclasspath/p:$(BREAK_ITERATOR_CLASSES)
+$(BREAK_ITERATOR_DIR)/_the.bifiles_th: $(BUILD_TOOLS) $(UNICODEDATA) $(BUILD_BREAKITERATOR)
+	$(ECHO) "Generating BreakIteratorData_th"
+	$(MKDIR) -p  $(DATA_PKG_DIR)
+	rm -f $(BIFILES_TH)
+	$(TOOL_GENERATEBREAKITERATORDATA) \
+		-o $(DATA_PKG_DIR) \
+		-spec $(UNICODEDATA) \
+		-language th
+	touch $@
+
+
+BREAK_ITERATOR += $(BIFILES) $(BIFILES_TH)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GenerateClasses.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,95 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include RMICompile.gmk
+
+CLASSES_DIR := $(JDK_OUTPUTDIR)/classes
+# Depend on files in newclasses for now to avoid bad dependency handling caused by
+# copy always updating timestamps in classes.
+NEWCLASSES_DIR := $(JDK_OUTPUTDIR)/newclasses
+# Generate classes into separate dir for now. Can't drop in same dir as JavaCompilation 
+# macros as that will mess up recompile deps.
+STUB_CLASSES_DIR := $(JDK_OUTPUTDIR)/newrmicclasses
+RMIC_GENSRC_DIR := $(JDK_OUTPUTDIR)/gendocsrc_rmic
+
+GENCLASSES :=
+
+##########################################################################################
+#
+# Generate RMI stubs
+#
+
+$(eval $(call SetupRMICompilation,RMI_12,\
+		CLASSES:=sun.rmi.server.Activation$$$$ActivationSystemImpl\
+			 java.rmi.activation.ActivationGroup\
+			 com.sun.jndi.rmi.registry.ReferenceWrapper,\
+		CLASSES_DIR:=$(NEWCLASSES_DIR),\
+		STUB_CLASSES_DIR:=$(STUB_CLASSES_DIR),\
+		RUN_V12:=true))
+GENCLASSES += $(RMI_12)
+
+$(eval $(call SetupRMICompilation,RMI_11,\
+		CLASSES:=sun.rmi.registry.RegistryImpl\
+			 sun.rmi.transport.DGCImpl,\
+		CLASSES_DIR:=$(NEWCLASSES_DIR),\
+		STUB_CLASSES_DIR:=$(STUB_CLASSES_DIR),\
+		RUN_V11:=true))
+GENCLASSES += $(RMI_11)
+
+# For RMI/IIOP call rmic a second time with -standardPackage option
+# so that *_tie classes are generated in package without the prefix
+# org.omg.stub (6375696)
+JMAN_RMI_CLASSES:=javax.management.remote.rmi.RMIConnectionImpl\
+		  javax.management.remote.rmi.RMIServerImpl
+$(eval $(call SetupRMICompilation,RMI_IIOP,\
+		CLASSES:=$(JMAN_RMI_CLASSES),\
+		CLASSES_DIR:=$(NEWCLASSES_DIR),\
+		STUB_CLASSES_DIR:=$(STUB_CLASSES_DIR),\
+		RUN_V12:=true,\
+		RUN_IIOP:=true,\
+		RUN_IIOP_STDPKG:=true))
+GENCLASSES += $(RMI_IIOP)
+
+# Keep generated RMI/JRMP Stub source files and copy them to RMIC_GENSRC_DIR
+# so that javadoc can include them in the API (4997471)
+$(eval $(call SetupRMICompilation,RMI_SRC,\
+		CLASSES:=$(JMAN_RMI_CLASSES),\
+		CLASSES_DIR:=$(NEWCLASSES_DIR),\
+		STUB_CLASSES_DIR:=$(RMIC_GENSRC_DIR),\
+		RUN_V12:=true,\
+		KEEP_GENERATED:=true))
+GENCLASSES += $(filter %.java,$(RMI_SRC))
+
+##########################################################################################
+
+all: $(GENCLASSES)
+	$(FIND) $(RMIC_GENSRC_DIR) -name "*.class" $(FIND_DELETE)
+	$(CP) -rp $(STUB_CLASSES_DIR)/* $(CLASSES_DIR)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GenerateData.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,49 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+# We need the tools.
+include Tools.gmk
+
+# Now include all the rules that generate data resources.
+# These are written directly into newclasses dir.
+
+include GendataBreakIterator.gmk
+GENDATA += $(BREAK_ITERATOR)
+
+##########################################################################################
+
+$(GENDATA) : $(BUILD_TOOLS)
+
+all: $(GENDATA)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GenerateJavaSources.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,68 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include NativeCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+# We need the tools.
+include Tools.gmk
+
+# Now include all the rules that generate Java sources.
+# The Java sources are written into the gensrc_.... directories.
+
+include GensrcProperties.gmk
+GENSRC += $(GENSRC_PROPERTIES)
+
+include GensrcLocaleDataMetaInfo.gmk
+GENSRC += $(GENSRC_LOCALEDATAMETAINFO)
+
+include GensrcCharacterData.gmk
+GENSRC += $(GENSRC_CHARACTERDATA)
+
+include GensrcJDWP.gmk
+GENSRC += $(GENSRC_JDWP)
+
+include GensrcMisc.gmk
+GENSRC += $(GENSRC_MISC)
+
+$(GENSRC) : $(BUILD_TOOLS)
+
+all: $(GENSRC)
+	$(MKDIR) -p $(JDK_OUTPUTDIR)/gensrc
+	(cd $(JDK_OUTPUTDIR) && \
+		chmod -R u+rw gensrc && \
+		cp -rp gensrc_characterdata/* gensrc && \
+		cp -rp gensrc_properties/* gensrc && \
+		cp -rp gensrc_localedatametainfo/* gensrc && \
+		cp -rp gensrc_jdwp/* gensrc && \
+		cp -rp gensrc_misc/* gensrc)
+
+.PHONY: all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GensrcCharacterData.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,65 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Rules to create $(JDK_OUTPUTDIR)/gensrc_characterdata/sun/lang/CharacterData*.java 
+#
+
+GENSRC_CHARACTERDATA:=
+
+CHARACTERDATA = $(JDK_TOPDIR)/make/tools/GenerateCharacter
+UNICODEDATA   = $(JDK_TOPDIR)/make/tools/UnicodeData
+
+define SetupCharacterData
+    $(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/$1.java : $(CHARACTERDATA)/$1.java.template $(BUILD_TOOLS)
+	mkdir -p $$(@D)
+	echo Generating $1.java
+	$(TOOL_GENERATECHARACTER) $2 \
+		-template $(CHARACTERDATA)/$1.java.template \
+		-spec $(UNICODEDATA)/UnicodeData.txt \
+		-specialcasing $(UNICODEDATA)/SpecialCasing.txt \
+		-proplist $(UNICODEDATA)/PropList.txt \
+		-o $(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/$1.java -string \
+		-usecharforbyte $3
+
+    GENSRC_CHARACTERDATA += $(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/$1.java
+endef
+
+$(eval $(call SetupCharacterData,CharacterDataLatin1,,-latin1 8))
+$(eval $(call SetupCharacterData,CharacterData00,-plane 0,11 4 1))
+$(eval $(call SetupCharacterData,CharacterData01,-plane 1,11 4 1))
+$(eval $(call SetupCharacterData,CharacterData02,-plane 2,11 4 1))
+$(eval $(call SetupCharacterData,CharacterData0E,-plane 14,11 4 1))
+
+# Copy two Java files that need no preprocessing.
+$(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/%.java : $(CHARACTERDATA)/%.java.template
+	$(MKDIR) -p $(@D)
+	echo Generating $(@F)
+	$(CP) -f $< $@
+
+GENSRC_CHARACTERDATA += $(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/CharacterDataUndefined.java \
+                       $(JDK_OUTPUTDIR)/gensrc_characterdata/java/lang/CharacterDataPrivateUse.java
+
+$(GENSRC_CHARACTERDATA) : $(BUILD_TOOLS)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GensrcJDWP.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,38 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Translate the Java debugger wire protocol (jdwp.spec) file into a JDWP.java file
+# and a JDWPCommands.h C-header file.
+
+$(JDK_OUTPUTDIR)/gensrc_jdwp_headers/JDWPCommands.h : $(JDK_TOPDIR)/makefiles/jpda/jdwp/jdwp.spec
+
+$(JDK_OUTPUTDIR)/gensrc_jdwp/com/sun/tools/jdi/JDWP.java : $(JDK_TOPDIR)/makefiles/jpda/jdwp/jdwp.spec
+	mkdir -p $(@D)
+	mkdir -p $(JDK_OUTPUTDIR)/gensrc_jdwp_headers
+	$(ECHO) Creating JDWP.java and JDWPCommands.h from jdwp.spec
+	$(TOOL_JDWPGEN) $< -jdi $@ -include $(JDK_OUTPUTDIR)/gensrc_jdwp_headers/JDWPCommands.h
+
+GENSRC_JDWP:=	$(JDK_OUTPUTDIR)/gensrc_jdwp/com/sun/tools/jdi/JDWP.java \
+		$(JDK_OUTPUTDIR)/gensrc_jdwp_headers/JDWPCommands.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GensrcLocaleDataMetaInfo.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Scan for all locale resources and extract for which locales there exists
+# resources. Then put this meta information about exiting (supported?) locales
+# into LocaleDataMetaInfo.java
+
+# First go look for all locale files
+LOCALE_FILES:=$(shell $(FIND) $(JDK_TOPDIR)/src/share/classes \
+	-name "FormatData_*.java" -o -name "FormatData_*.properties" -o \
+	-name "CollationData_*.java" -o -name "CollationData_*.properties" -o \
+	-name "TimeZoneNames_*.java" -o -name "TimeZoneNames_*.properties" -o \
+	-name "LocaleNames_*.java" -o -name "LocaleNames_*.properties" -o \
+	-name "CurrencyNames_*.java" -o -name "CurrencyNames_*.properties" -o \
+	-name "CalendarData_*.java" -o -name "CalendarData_*.properties")
+
+# Then translate the locale files into for example: FormatData_sv 
+LOCALE_RESOURCES:=$(sort $(subst .properties,,$(subst .java,,$(notdir $(LOCALE_FILES)))))
+
+# Include the list of resources found during the previous compile.
+-include $(JDK_OUTPUTDIR)/gensrc_localedatametainfo/_the.locale_resources
+
+MISSING_RESOURCES:=$(filter-out $(LOCALE_RESOURCES),$(PREV_LOCALE_RESOURCES))
+NEW_RESOURCES:=$(filter-out $(PREV_LOCALE_RESOURCES),$(LOCALE_RESOURCES))
+
+ifneq (,$(MISSING_RESOURCES)$(NEW_RESOURCES))
+    # There is a difference in the number of supported resources. Trigger a regeneration.
+    $(shell $(RM) $(JDK_OUTPUTDIR)/gensrc_localedatametainfo/sun/util/LocaleDataMetaInfo.java)
+endif
+
+# The non-euro zone locales have to be separated from the euro-zone locales.
+NON_EURO_LOCALES:=ar% hi% iw% ja% ko% th% vi% zh%
+
+# This macro creates a sed expression that substitues for example:
+# #FormatData_EuroLocales# with: be be_BY bg bg_BG ca ca_ES... and some more.
+CAPTURE_LOCALE='s/$$(HASH)$1_$2EuroLocales$$(HASH)/ $$($3 $(NON_EURO_LOCALES),$$(filter-out $1,$$(subst $1_,,$$(filter $1_%,$(LOCALE_RESOURCES)))))/g'
+
+SED_ARGS:=-e 's|$(HASH)warn This file is preprocessed before being compiled|// -- This file was mechanically generated: Do not edit! -- //|g'
+#sun.text.resources.FormatData
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,FormatData,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,FormatData,Non,filter))
+
+#sun.text.resources.CollationData
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CollationData,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CollationData,Non,filter))
+
+#sun.util.resources.TimeZoneNames
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,TimeZoneNames,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,TimeZoneNames,Non,filter))
+
+#sun.util.resources.LocaleNames
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,LocaleNames,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,LocaleNames,Non,filter))
+
+#sun.util.resources.CurrencyNames
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CurrencyNames,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CurrencyNames,Non,filter))
+
+#sun.util.resources.CalendarData
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CalendarData,,filter-out))
+$(eval SED_ARGS+=-e $(call CAPTURE_LOCALE,CalendarData,Non,filter))
+
+$(JDK_OUTPUTDIR)/gensrc_localedatametainfo/sun/util/LocaleDataMetaInfo.java: \
+		$(JDK_TOPDIR)/src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java.template
+	mkdir -p $(@D)
+	$(ECHO) Creating sun/util/LocaleDataMetaInfo.java from $(words $(LOCALE_RESOURCES)) found resources.
+	$(PRINTF) "PREV_LOCALE_RESOURCES:=$(LOCALE_RESOURCES)" > $(JDK_OUTPUTDIR)/gensrc_localedatametainfo/_the.locale_resources
+	$(SED) $(SED_ARGS) $(JDK_TOPDIR)/src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java.template \
+		> $(JDK_OUTPUTDIR)/gensrc_localedatametainfo/sun/util/LocaleDataMetaInfo.java
+
+GENSRC_LOCALEDATAMETAINFO:=$(JDK_OUTPUTDIR)/gensrc_localedatametainfo/sun/util/LocaleDataMetaInfo.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GensrcMisc.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,74 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+##########################################################################################
+# Install the launcher name, release version string, full version
+# string and the runtime name into the Version.java file.
+# To be printed by java -version
+
+$(JDK_OUTPUTDIR)/gensrc_misc/sun/misc/Version.java: \
+	$(JDK_TOPDIR)/src/share/classes/sun/misc/Version.java.template
+	$(MKDIR) -p $(@D)
+	echo Generating sun/misc/Version.java
+	$(SED) -e 's/@@launcher_name@@/$(LAUNCHER_NAME)/g' \
+	       -e 's/@@java_version@@/$(RELEASE)/g' \
+	       -e 's/@@java_runtime_version@@/$(FULL_VERSION)/g' \
+	       -e 's/@@java_runtime_name@@/$(RUNTIME_NAME)/g' \
+            $< > $@
+
+GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/misc/Version.java
+
+##########################################################################################
+# Version file for jconsole
+
+$(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java: \
+                $(JDK_TOPDIR)/src/share/classes/sun/tools/jconsole/Version.java.template
+	$(MKDIR) -p $(@D)
+	echo Generating sun/tools/jconsole/Version.java
+	$(SED) -e 's/@@jconsole_version@@/$(FULL_VERSION)/g' $< > $@
+
+GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/sun/tools/jconsole/Version.java
+
+##########################################################################################
+
+ifeq ($(HOST_OS_API),posix)
+    UPSUFFIX:=$(PLATFORM)
+    ifeq ($(PLATFORM),macosx)
+        UPSUFFIX:=bsd
+    endif
+    # UNIXProcess.java is different for solaris and linux. We need to copy
+    # the correct UNIXProcess.java over to $(JDK_OUTPUTDIR)/gensrc/java/lang/.
+
+    $(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java : \
+              $(JDK_TOPDIR)/src/solaris/classes/java/lang/UNIXProcess.java.$(UPSUFFIX)
+	$(MKDIR) -p $(@D)
+	echo Copying UNIXProcess.java.$(PLATFORM) to java/lang/UNIXProcess.java
+	$(CP) $< $@
+	$(CHMOD) u+rw $@
+
+    GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc_misc/java/lang/UNIXProcess.java
+endif
+
+##########################################################################################
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/GensrcProperties.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,272 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# All .properties files to be compiled are appended to this variable.
+ALL_COMPILED_PROPSOURCES:=
+# All generated .java files from compilation are appended to this variable.
+ALL_COMPILED_PROPJAVAS:=
+# The (very long) command line for compilation, stored in a file, prior to use.
+COMPILE_PROPCMDLINE:=
+
+# All .properties files to be cleaned are appended to this variable.
+ALL_CLEANED_PROPSOURCES:=
+# All generated cleaned .properties files from cleaning are appended to this variable.
+ALL_CLEANED_PROPOUTPUT:=
+# The (very long) command line for cleaning, stored in a file, prior to use.
+CLEAN_PROPCMDLINE:=
+
+define add_properties_to_compile
+  # $1 is the name of the properties group
+  # $2 is the files belonging to this group
+  # $3 is the super class for the generated java file.
+  # $4 is a from pattern for translating stripped name from source to target
+  # $5 is the to pattern replacing $3 in the target
+
+  # Strip away prefix and suffix,
+  # leaving for example: sun/util/resources/CurrencyNames_sv
+  $1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/%.properties,%,\
+                $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2))
+
+  # Apply optional name transformation, example: hz_TW -> hz_HK
+  $(if $4,$1_PROPPATHS:=$$(patsubst $4,$5,$$($1_PROPPATHS)))
+
+  # Accumulate all found properties files.
+  ALL_COMPILED_PROPSOURCES+=$2
+
+  # Generate the list of to be created java files.
+  ALL_COMPILED_PROPJAVAS+=$$(patsubst %,$(JDK_OUTPUTDIR)/gensrc_properties/%.java,$$($1_PROPPATHS))
+
+  # Now generate a sequence of "-compile ...CurrencyNames_sv.properties ...CurrencyNames_sv.java ListResourceBundle"
+  # suitable to be fed into the CompileProperties command.
+  COMPILE_PROPCMDLINE+=$$(subst _SPACE_,$(SPACE),$$(join $$(addprefix -compile_SPACE_,$2), \
+		$$(addsuffix _SPACE_$(strip $3),\
+                    $$(addprefix _SPACE_$(JDK_OUTPUTDIR)/gensrc_properties/,\
+                        $$(addsuffix .java,$$($1_PROPPATHS))))))
+endef
+
+define add_properties_to_clean
+  # $1 is the name of the properties group
+  # $2 is the files belonging to this group
+  # $3 is a from pattern for translating stripped name from source to target
+  # $4 is the to pattern replacing $3 in the target
+  # $5 optional name of extra directory to put properties files in (ex: resources)
+
+  # Strip away prefix and suffix,
+  # leaving for example: sun/util/resources/CurrencyNames_sv
+  $1_PROPPATHS:=$$(patsubst $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/classes/%.properties,%,\
+                $$(patsubst $(JDK_TOPDIR)/src/share/classes/%.properties,%,$2))
+
+  # Apply optional name transformation, example: hz_TW -> hz_HK
+  $(if $3,$1_PROPPATHS:=$$(patsubst $3,$4,$$($1_PROPPATHS)))
+
+  # Accumulate all found properties files.
+  ALL_CLEANED_PROPSOURCES+=$2
+
+  # Generate the list of to be created java files.
+  $1_PROPOUTPUT:=$$(patsubst %,$(JDK_OUTPUTDIR)/newclasses/%.properties,$$($1_PROPPATHS))
+  # If the properties target file isn't in a "resources" dir, add one.
+  ifneq ($5,)
+    $1_PROPOUTPUT:=$$(foreach p,$$($1_PROPOUTPUT), $$(dir $$p)$5/$$(notdir $$p))
+  endif
+
+  ALL_CLEANED_PROPOUTPUT+=$$($1_PROPOUTPUT)
+
+  # Now generate a sequence of "-clean ...[src]...CurrencyNames_sv.properties ...[build]...CurrencyNames_sv.properties"
+  # suitable to be fed into the StripProperties command.
+  CLEAN_PROPCMDLINE+=$$(subst _SPACE_,$(SPACE),$$(join $$(addprefix -clean_SPACE_,$2), \
+                    $$(addprefix _SPACE_,$$($1_PROPOUTPUT))))
+endef
+
+# Some packages contain pregenerated java files instead of properties files.
+# But unfortunately not all properties should be converted, some should be
+# copied....argggghhh.
+
+# For example:
+#    sun/applet/resources
+#    sun/misc/resources
+#    sun/text/resources
+#    sun/tools/jconsole/resources
+#    sun/tools/native2ascii/resources
+#    sun/util/resources
+
+# Some packages have properties that need to be converted to java source files.
+
+#com/sun/accessibility/internal/resources
+$(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/accessibility/internal/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,COM_SUN_ACCESSIBILITY_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/accessibility/internal/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+#com/sun/imageio/plugins/common
+#com/sun/java/swing/plaf/gtk/resources
+#com/sun/java/swing/plaf/motif/resources
+#com/sun/java/swing/plaf/windows/resources
+#com/sun/java/util/jar/pack
+$(eval $(call add_properties_to_clean,JNDI_COSNAMING,\
+	$(JDK_TOPDIR)/src/share/classes/com/sun/java/util/jar/pack/intrinsic.properties))
+#com/sun/jndi/cosnaming
+$(eval $(call add_properties_to_clean,JNDI_COSNAMING,\
+	$(JDK_TOPDIR)/src/share/classes/com/sun/jndi/cosnaming/jndiprovider.properties))
+#com/sun/jndi/ldap
+$(eval $(call add_properties_to_clean,JNDI_COSNAMING,\
+	$(JDK_TOPDIR)/src/share/classes/com/sun/jndi/ldap/jndiprovider.properties))
+
+#com/sun/org/apache/xml/internal/security/resource
+#FIXME: The "xmlsecurity*.properties" pattern is not ideal; we might want to find
+#a better way to select the properties files that are needed.
+$(eval $(call add_properties_to_clean,XML_SECURITY,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/org/apache/xml/internal/security/resource -name "xmlsecurity*.properties")))
+
+#com/sun/rowset
+$(eval $(call add_properties_to_clean,COM_SUN_ROWSET,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/rowset -name "*.properties")))
+$(eval $(call add_properties_to_clean,COM_SUN_ROWSET_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/rowset -name "*zh_TW.properties"),\
+	%zh_TW,%zh_HK))
+
+#com/sun/servicetag/resources
+#com/sun/swing/internal/plaf/basic/resources
+#com/sun/swing/internal/plaf/metal/resources
+#com/sun/swing/internal/plaf/synth/resources
+
+#com/sun/tools/jdi/resources
+$(eval $(call add_properties_to_compile,COM_SUN_TOOLS_JDI,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/com/sun/tools/jdi/resources -name "*.properties"),\
+		ListResourceBundle))
+
+#com/sun/tools/script/shell
+#java/util
+#javax/sql/rowset
+#sun/awt/resources
+$(eval $(call add_properties_to_compile,SUN_AWT,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/awt/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,SUN_AWT_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/awt/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+#sun/launcher/resources
+$(eval $(call add_properties_to_compile,SUN_LAUNCHER,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/launcher/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,SUN_LAUNCHER_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/launcher/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+#sun/management/resources
+#sun/print
+#sun/print/resources
+$(eval $(call add_properties_to_compile,SUN_PRINT,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/print/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,SUN_PRINT_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/print/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+#sun/rmi/registry/resources
+$(eval $(call add_properties_to_clean,SUN_RMI_REGISTRY,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/rmi/registry/resources -name "*.properties")))
+$(eval $(call add_properties_to_clean,SUN_RMI_REGISTRY_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/rmi/registry/resources -name "*zh_TW.properties"),\
+	%zh_TW,%zh_HK))
+
+#sun/rmi/rmic/resources
+$(eval $(call add_properties_to_clean,SUN_RMI_RMIC,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/rmi/rmic/resources -name "*.properties")))
+
+#sun/rmi/server/resources
+$(eval $(call add_properties_to_clean,SUN_RMI_SERVER,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/rmi/server/resources -name "*.properties")))
+$(eval $(call add_properties_to_clean,SUN_RMI_SERVER_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/rmi/server/resources -name "*zh_TW.properties"),\
+	%zh_TW,%zh_HK))
+
+# sun/tools/jar/resources
+$(eval $(call add_properties_to_compile,SUN_TOOLS_JAR,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/jar/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,SUN_TOOLS_JAR_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/jar/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+
+#sun/tools/javac/resources
+# It's unclear if the other localized property files here are supposed to be copied or not
+# but the old build system didn't copy them.
+$(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/javac/resources -name "javac.properties")))
+
+#sun/tools/serialver
+$(eval $(call add_properties_to_clean,SUN_TOOLS_SERIALVER,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/tools/serialver -name "*.properties"),,,resources))
+
+#sun/util/logging/resources
+$(eval $(call add_properties_to_compile,SUN_UTIL_LOGGING,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/util/logging/resources -name "*.properties"),\
+		ListResourceBundle))
+$(eval $(call add_properties_to_compile,SUN_UTIL_LOGGING_HK,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/util/logging/resources -name "*.properties"),\
+		ListResourceBundle,%zh_TW,%zh_HK))
+# sun/util/resources
+$(eval $(call add_properties_to_compile,SUN_UTIL,\
+	$(shell find $(JDK_TOPDIR)/src/share/classes/sun/util/resources -name "*.properties"),\
+		LocaleNamesBundle))
+
+
+# Now setup the rule for the generation of the resource bundles.
+$(JDK_OUTPUTDIR)/gensrc_properties/_the.compiled_properties : $(ALL_COMPILED_PROPSOURCES) $(BUILD_TOOLS)
+	$(RM) -rf $(JDK_OUTPUTDIR)/gensrc_properties/*
+#	Generate all output directories in advance since the build tool does not do that...
+	$(MKDIR) -p $(sort $(dir $(ALL_COMPILED_PROPJAVAS)))
+	echo Compiling $(words $(ALL_COMPILED_PROPSOURCES)) properties into resource bundles
+	$(call ListPathsSafely,COMPILE_PROPCMDLINE,\n, >> $(JDK_OUTPUTDIR)/gensrc_properties/_the.cmdline)
+	$(TOOL_COMPILEPROPERTIES) -quiet @$(JDK_OUTPUTDIR)/gensrc_properties/_the.cmdline
+	touch $@
+
+# Now setup the rule for the generation of the cleaned properties.
+# FIXME: We currently don't handle removed properties incrementally. 
+$(JDK_OUTPUTDIR)/newclasses/_the.cleaned_properties : $(ALL_CLEANED_PROPSOURCES) $(BUILD_TOOLS)
+	$(RM) -f $(JDK_OUTPUTDIR)/newclasses/_the.cleaned_properties.cmdline
+#	Generate all output directories in advance since the build tool does not do that...
+	$(MKDIR) -p $(sort $(dir $(ALL_CLEANED_PROPOUTPUT)))
+	echo Copying and cleaning $(words $(ALL_CLEANED_PROPSOURCES)) properties 
+	$(call ListPathsSafely,CLEAN_PROPCMDLINE,\n, >> $(JDK_OUTPUTDIR)/newclasses/_the.cleaned_properties.cmdline)
+	$(TOOL_STRIPPROPERTIES) @$(JDK_OUTPUTDIR)/newclasses/_the.cleaned_properties.cmdline
+	touch $@
+
+$(ALL_COMPILED_PROPJAVAS) : $(JDK_OUTPUTDIR)/gensrc_properties/_the.compiled_properties
+
+$(ALL_CLEANED_PROPOUTPUT) : $(JDK_OUTPUTDIR)/newclasses/_the.cleaned_properties
+
+
+# Some zh_HK resources are just copied of zh_TW
+$(JDK_OUTPUTDIR)/gensrc_properties/%_zh_HK.java: $(JDK_TOPDIR)/src/share/classes/%_zh_TW.java
+	$(MKDIR) -p $(@D)
+	$(CAT) $< | $(SED) -e '/class/s/_zh_TW/_zh_HK/' > $@
+
+ZH_HK_JAVA:=	sun/applet/resources/MsgAppletViewer_zh_HK.java \
+		sun/misc/resources/Messages_zh_HK.java \
+		sun/security/util/AuthResources_zh_HK.java
+ZH_HK_JAVA_FILES:=$(addprefix $(JDK_OUTPUTDIR)/gensrc_properties/,$(ZH_HK_JAVA))
+
+
+GENSRC_PROPERTIES:=$(ALL_COMPILED_PROPJAVAS) $(ALL_CLEANED_PROPOUTPUT) $(ZH_HK_JAVA_FILES)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/Images.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,74 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include Setup.gmk
+
+default: $(IMAGES_OUTPUTDIR)/_the.images
+
+include Tools.gmk
+
+JARS:=
+
+##########################################################################################
+
+JCONSOLE_JAR_DEPS := \
+  $(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses/sun/tools/jconsole/ -name "_the.package") \
+  $(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses/com/sun/tools/jconsole/ -name "_the.package")
+
+$(eval $(call SetupArchive,BUILD_JCONSOLE_JAR,$(JCONSOLE_JAR_DEPS),\
+		SRCS:=$(JDK_OUTPUTDIR)/newclasses,\
+		SUFFIXES:=.class .gif .png,\
+		INCLUDES:=sun/tools/jconsole com/sun/tools/jconsole,\
+		JARMAIN:=sun.tools.jconsole.JConsole,\
+		JAR:=$(JDK_OUTPUTDIR)/lib/jconsole.jar,\
+		SKIP_METAINF:=true))
+
+JARS+=$(JDK_OUTPUTDIR)/lib/jconsole.jar
+
+##########################################################################################
+
+# Need to define BUILDDIR for Release.gmk to work
+BUILDDIR=$(JDK_TOPDIR)/makefiles
+include common/Defs.gmk
+include common/Release.gmk
+
+# A rudimentary attempt at band-aiding the dependency tracking.
+DEPS:=	$(shell $(FIND) $(JDK_OUTPUTDIR)/newclasses -name "*.class" -type f) \
+	$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f) \
+	$(shell $(FIND) $(JDK_OUTPUTDIR)/lib -type f) 
+
+$(IMAGES_OUTPUTDIR)/_the.images : $(DEPS) $(JARS)
+	$(MKDIR) -p $(@D)
+# 	Restart this makefile, ugly, but since double colon (::) rules
+# 	have been used in Release.gmk, it is impossible to craft on
+# 	dependencies on these. I.e. -do-not-use- :: rules!!!!!
+#       Repeat after me: -do-not-use- :: rules!!!!!
+	$(MAKE) -j1 -f Images.gmk $(IMAGES_MAKE_ARGS) images
+	$(TOUCH) $@
+
+.PHONY: default
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/LegacyMakefiles.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,57 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include $(SPEC)
+include MakeBase.gmk
+
+all: $(JDK_OUTPUTDIR)/_the.legacy_make
+
+DEPS:=	$(shell $(FIND) $(JDK_TOPDIR)/makefiles/java -type f) \
+		$(shell $(FIND) $(JDK_TOPDIR)/makefiles/javax -type f) \
+		$(shell $(FIND) $(JDK_TOPDIR)/makefiles/sun -type f) \
+		$(shell $(FIND) $(JDK_TOPDIR)/makefiles/com -type f) \
+		$(shell $(FIND) $(JDK_TOPDIR)/makefiles/apple -type f)
+
+$(JDK_OUTPUTDIR)/_the.legacy_make: $(DEPS)
+	(echo Building single threaded Java subdir && \
+        $(MAKE) -j1 -C java all && \
+	(if test "$(PLATFORM)" = macosx; then \
+		echo Building single threaded Apple subdir && \
+		$(MAKE) -j1 -C apple all; \
+	fi) && \
+	echo Building single threaded javax subdir && \
+	$(MAKE) -j1 -C javax all && \
+	echo Building single threaded sun subdir && \
+	$(MAKE) -j1 -C sun all && \
+	echo Building single threaded com subdir && \
+	$(MAKE) -j1 -C com all && \
+	if [ -z "$(OPENJDK)" ]; then \
+		echo Building single threaded altclasses subdir && \
+		$(MAKE) -j1 -C altclasses all; \
+	fi && \
+	touch $@)
+
+.PHONY: all
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,92 @@
+#
+# Copyright (c) 1995, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include NativeCompilation.gmk
+
+# Setup the java compilers for the JDK build.
+include Setup.gmk
+
+# Setup the build tools.
+include Tools.gmk
+
+
+all: $(BUILD_TOOLS)
+	+make -f GenerateJavaSources.gmk
+#       Drop back to the old makefiles for
+#       packages/libs that have not yet been converted.
+	+make -f LegacyMakefiles.gmk
+#       Ok, now gensrc is fully populated.
+	+make -f GenerateData.gmk
+	+make -f CompileJavaClasses.gmk
+#	The classes have been built, now generate
+#	classes that have other sources.
+	+make -f GenerateClasses.gmk
+#       The classes are now built and
+#       any javah files have now been generated.
+	+make -f CompileNativeLibraries.gmk
+#       Finally compile the launchers.
+	+make -f CompileLaunchers.gmk
+#       Now we have a complete jdk, which you can run.
+#       It is not yet wrapped up as an installed image.
+#       The demos are compiled against this jdk.
+ifndef NO_DEMOS
+	+make -f CompileDemos.gmk
+endif
+#	Now copy the sample sources into the jdk.
+ifndef NO_SAMPLES
+	+make -f CopySamples.gmk
+endif
+
+# Create the final jdk and jre images, to be wrapped up
+# into packages, or instealled.
+images: all
+	+make $(IMAGES_MAKE_ARGS) -f Images.gmk 
+
+
+BINARIES:=$(shell if test -d $(IMAGES_OUTPUTDIR)/j2sdk-image/bin; then cd $(IMAGES_OUTPUTDIR)/j2sdk-image/bin && $(LS) ; fi)
+INSTALLDIR:=openjdk-$(RELEASE)
+
+# Install the jdk image, in a very crude way. Not taking into
+# account, how to install properly on macosx or windows etc.
+install: images
+	echo Installing jdk image into $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	echo and creating $(words $(BINARIES)) links from $(INSTALL_PREFIX)/bin into the jdk.
+	$(MKDIR) -p $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	$(RM) -r $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/*
+	$(CP) -rp $(IMAGES_OUTPUTDIR)/j2sdk-image/* $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	$(RM) $(addprefix $(INSTALL_PREFIX)/bin/,$(BINARIES))
+	$(foreach b,$(BINARIES),$(LN) -s $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/bin/$b $(INSTALL_PREFIX)/bin/$b &&) true
+
+# Create the deb,rpm,tgz,zip, packages.
+packages: images
+	echo Creating packages...well, in the future.
+	$(MKDIR) -p $(OUTPUT_ROOT)/packages
+
+.PHONY: all install
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/PatchList.solaris	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,31 @@
+BUILD,RUNTIME 5.8 Sparc 109147-24 x86 109148-24 REQ "Linker patch"
+BUILD,RUNTIME 5.8 Sparc 108652-66 x86 108653-55 REQ "Xserver patch"
+BUILD,RUNTIME 5.8 Sparc 108940-52 x86 108941-52 REQ "Motif 2.1 patch"
+BUILD,RUNTIME 5.8 Sparc 108989-02 x86 108990-02 REQ "Accounting patch"
+BUILD,RUNTIME 5.8 Sparc none      x86 111307-04 REQ "boot.bin, bootconf.exe, bootenv.rc and nbp patch"
+BUILD,RUNTIME 5.8 Sparc 111310-01 x86 111311-01 REQ "libhcpagent.so.l patch"
+BUILD,RUNTIME 5.8 Sparc 112396-02 x86 112397-02 REQ "fgrep patch"
+BUILD,RUNTIME 5.8 Sparc 108987-13 x86 108988-13 REQ "patchadd, patchrm patch"
+BUILD,RUNTIME 5.8 Sparc 111111-03 x86 111112-03 REQ "nawk patch"
+BUILD,RUNTIME 5.8 Sparc 108528-20 x86 108529-20 REQ "Kernel update"
+BUILD,RUNTIME 5.8 Sparc 108993-18 x86 none      REQ "LDAP2 Patch"
+BUILD,RUNTIME 5.8 Sparc none      x86 110400-01 REQ "RBAC Feature patch"
+BUILD,RUNTIME 5.8 Sparc none      x86 111024-02 REQ "/kernel/fs/mntfs patch"
+BUILD,RUNTIME 5.8 Sparc none      x86 108994-18 REQ "LDAP2 patch"
+BUILD,RUNTIME 5.8 Sparc 109147-23 x86 109148-23 REQ "linker patch"
+BUILD,RUNTIME 5.8 Sparc 111308-03 x86 111309-03 REQ "Performance for apps using memory alloc"
+RUNTIME       5.8 Sparc 112003-03 x86 none      REQ "Fontset patch for sparcv9"
+RUNTIME       5.8 Sparc 108921-16 x86 108922-16 REQ "CDE patch"
+RUNTIME       5.8 Sparc 108773-18 x86 108774-18 REQ "X input method patch"
+RUNTIME       5.8 Sparc 110386-03 x86 none      REQ "RBAC Feature Patch"
+RUNTIME       5.8 Sparc 111023-02 x86 none      REQ "/kernel/fs/mntfs and /kernel/fs/sparcv9/mntfs patch"
+RUNTIME       5.8 Sparc 112472-01 x86 112473-01 OPT "Font2DTest2 patch" 
+RUNTIME       5.8 Sparc 112438-01 x86 112439-01 REQ "/kernel/drv/random patch"
+
+COMPILER      5.8 Sparc 109505-06 x86 109502-03 REQ "For C 5.0, C++ 5.0"
+COMPILER      5.8 Sparc 109513-05 x86 109514-03 REQ "For Forte Development 6 C compiler"
+COMPILER      5.8 Sparc 109508-03 x86 109509-03 REQ "For Forte Development 6 update 1 C++ compiler"
+COMPILER      5.8 Sparc 109510-03 x86 109511-03 REQ "For Forte 6.1 Debugger"
+COMPILER      5.8 Sparc 109516-02 x86 109517-02 REQ "For Forte 6.1 Performance Analyzer"
+COMPILER      5.8 Sparc 110480-01 x86 110481-01 REQ "For Forte TeamWare"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/Setup.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,77 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+JAVAC_JARS ?= "-Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar" -jar $(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar
+JAVAH_JARS ?= "-Xbootclasspath/p:$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javah.jar" -jar $(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javah.jar
+
+DISABLE_WARNINGS:=-Xlint:all,-deprecation,-unchecked,-rawtypes,-cast,-serial,-dep-ann,-static,-fallthrough,-try,-varargs,-empty,-finally
+
+# The generate old bytecode javac setup uses the new compiler to compile for the
+# boot jdk to generate tools that need to be run with the boot jdk.
+# Thus we force the target bytecode to 6.
+$(eval $(call SetupJavaCompiler,GENERATE_OLDBYTECODE,\
+     JVM:=$(JAVA),\
+     JAVAC:=$(JAVAC_JARS),\
+     FLAGS:=-source 7 -target 7 -bootclasspath $(BOOT_RTJAR) $(DISABLE_WARNINGS),\
+     SERVER_DIR:=$(JAVAC_SERVERS),\
+     SERVER_JVM:=$(SERVER_JAVA),\
+     MODE:=$(JAVAC_USE_MODE),\
+     USE_DEPS:=$(JAVAC_USE_DEPS)))
+
+# The generate new bytecode javac setup uses the new compiler to compile for the
+# new jdk. This new bytecode might only be possible to run using the new jvm.
+$(eval $(call SetupJavaCompiler,GENERATE_JDKBYTECODE,\
+     JVM:=$(JAVA),\
+     JAVAC:=$(JAVAC_JARS),\
+     JAVAH:=$(JAVAH_JARS),\
+     FLAGS:=-bootclasspath "$(JDK_OUTPUTDIR)/newclasses$(PATH_SEP)$(JDK_OUTPUTDIR)/classes" -Xprefer:source -XDignore.symbol.file=true $(DISABLE_WARNINGS),\
+     SERVER_DIR:=$(JAVAC_SERVERS),\
+     SERVER_JVM:=$(SERVER_JAVA),\
+     MODE:=$(JAVAC_USE_MODE),\
+     USE_DEPS:=$(JAVAC_USE_DEPS)))
+
+# After the jdk is built, we want to build demos using only the recently
+# generated jdk classes and nothing else, no jdk source, etc etc.
+# I.e. the rt.jar, but since rt.jar has not yet been generated
+# (it will be in "make images") therefore we use classes instead.
+$(eval $(call SetupJavaCompiler,GENERATE_USINGJDKBYTECODE,\
+     JVM:=$(JAVA),\
+     JAVAC:=$(JAVAC_JARS),\
+     FLAGS:= -Xbootclasspath:$(JDK_OUTPUTDIR)/classes $(DISABLE_WARNINGS),\
+     SERVER_DIR:=$(JAVAC_SERVERS),\
+     SERVER_JVM:=$(SERVER_JAVA),\
+     MODE:=$(JAVAC_USE_MODE),\
+     USE_DEPS:=$(JAVAC_USE_DEPS)))
+
+# A temporary solution to work around the fact that Matrix3D.java
+# exists in several applets. The javacserver does not like to be
+# fed the same class twice. Thus we compile one applet outside of the
+# javacserver.
+$(eval $(call SetupJavaCompiler,GENERATE_USINGJDKBYTECODE_NOSERV,\
+     JVM:=$(JAVA),\
+     JAVAC:=$(JAVAC_JARS),\
+     FLAGS:= -Xbootclasspath:$(JDK_OUTPUTDIR)/classes $(DISABLE_WARNINGS),\
+     MODE:=SINGLE_THREADED_BATCH,\
+     USE_DEPS:=FALSE))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/Tools.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,114 @@
+#
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+ifeq (,$(BUILD_TOOLS))
+$(eval $(call SetupJavaCompilation,BUILD_TOOLS,\
+                SETUP:=GENERATE_OLDBYTECODE,\
+		SRC:=$(JDK_TOPDIR)/make/tools/src,\
+		BIN:=$(JDK_OUTPUTDIR)/btclasses))
+endif
+
+ifndef DISABLE_NIMBUS
+
+$(JDK_OUTPUTDIR)/btclasses/build/tools/generatenimbus/resources/%.template : \
+	$(JDK_TOPDIR)/src/share/classes/javax/swing/plaf/nimbus/%.template
+	mkdir -p $(@D)
+	cp $< $@
+
+BUILD_TOOLS += $(foreach i,$(wildcard $(JDK_TOPDIR)/src/share/classes/javax/swing/plaf/nimbus/*.template),$(JDK_OUTPUTDIR)/btclasses/build/tools/generatenimbus/resources/$(notdir $i))
+
+endif
+
+
+# Add a checksum ("jsum") to the end of a text file. Prevents trivial tampering with class lists.
+TOOL_ADDJSUM=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.addjsum.AddJsum
+
+# The buildmetaindex tool creates a meta-index to make core class loaders lazier.
+TOOL_BUILDMETAINDEX=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.buildmetaindex.BuildMetaIndex
+
+# The comment checker is not currently used. Should it be removed or added to javac?
+TOOL_COMMENTCHECKER=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.commentchecker.CommentChecker
+
+TOOL_COMPILEFONTCONFIG=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.compilefontconfig.CompileFontConfig
+
+TOOL_COMPILEPROPERTIES=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.compileproperties.CompileProperties
+
+TOOL_STRIPPROPERTIES=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.stripproperties.StripProperties
+
+TOOL_JARREORDER=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.jarreorder.JarReorder
+
+TOOL_GENERATECHARACTER=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.generatecharacter.GenerateCharacter
+
+TOOL_CHARACTERNAME=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.generatecharacter.CharacterName
+
+TOOL_DIRDIFF=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.dirdiff.DirDiff
+
+TOOL_DTDBUILDER=$(JAVA) -Ddtd_home=$(JDK_TOPDIR)/make/tools/dtdbuilder/dtds \
+	-cp $(JDK_OUTPUTDIR)/btclasses build.tools.dtdbuilder.DTDBuilder
+
+TOOL_GENERATEBREAKITERATORDATA=$(JAVA) \
+	-cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.generatebreakiteratordata.GenerateBreakIteratorData
+
+TOOL_GENERATECURRENCYDATA=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.generatecurrencydata.GenerateCurrencyData
+
+TOOL_HASHER=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.hasher.Hasher
+
+# Jarsplit used in jdk/makefiles/common/Release.gmk
+TOOL_JARSPLIT=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.jarsplit.JarSplit
+
+TOOL_JAVAZIC=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.javazic.Main
+
+# TODO: There are references to the jdwpgen.jar in jdk/make/netbeans/jdwpgen/build.xml 
+# and nbproject/project.properties in the same dir. Needs to be looked at.
+TOOL_JDWPGEN=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses build.tools.jdwpgen.Main
+
+# TODO: Lots of files in jdk/make/tools/CharsetMapping dir
+TOOL_CHARSETMAPPING=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.charsetmapping.Main
+
+TOOL_SPP=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses build.tools.spp.Spp
+
+# TODO: Only referenced in jdk/make/tools/sharing/README.txt. Find out what it means.
+TOOL_MAKECLASSLIST=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.makeclasslist.MakeClasslist
+
+# Nimbus is used somewhere in the swing build.
+TOOL_GENERATENIMBUS=$(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
+	build.tools.generatenimbus.Generator
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/altclasses/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,84 @@
+#
+# Copyright (c) 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building alternate runtime classes (not used by default)
+#
+
+BUILDDIR = ..
+
+PRODUCT = altclasses
+
+include $(BUILDDIR)/common/Defs.gmk
+
+# Root of alternate class sources
+
+ALTCLASSES_SRCDIR = $(CLOSED_SRC)/share/altclasses
+
+# Alternate runtime classes
+
+ALTRT_JAR_FILE = $(LIBDIR)/alt-rt.jar
+ALTRT_JAR_SOURCE_FILE = $(TEMPDIR)/alt-rt.jarsrclist
+ALTRT_JAR_SOURCES = $(wildcard $(ALTCLASSES_SRCDIR)/java/*/*.java)
+
+# Use a special file suffix for the file that holds the source list
+
+.SUFFIXES: .jarsrclist
+
+# Build rules
+
+all build: 
+	@if [ -d $(ALTCLASSES_SRCDIR) ] ; then \
+	   $(MAKE) $(ALTRT_JAR_FILE); \
+	fi
+
+# Source list file creation
+
+$(ALTRT_JAR_SOURCE_FILE): $(ALTRT_JAR_SOURCES) FRC
+	$(prep-target)
+	$(ECHO) $(ALTRT_JAR_SOURCES) > $@
+
+clean clobber::
+	$(RM) $(ALTRT_JAR_FILE) $(ALTRT_JAR_SOURCE_FILE) 
+	$(RM) -r $(ALTRT_JAR_SOURCE_FILE).classes
+
+include $(BUILDDIR)/common/Classes.gmk
+
+# Pattern rule to turn a source list file into a jar file
+$(LIBDIR)/%.jar : $(TEMPDIR)/%.jarsrclist
+	$(prep-target)
+	$(RM) -r $(<).classes
+	$(MKDIR) -p $(<).classes
+	$(JAVAC_CMD) -implicit:none -d $(<).classes @$<
+	$(BOOT_JAR_CMD) cf $@ -C $(<).classes . $(BOOT_JAR_JFLAGS)
+
+# Force target
+
+FRC:
+
+# Non file targets
+
+.PHONY: all build clean clobber
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/apple/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building com/apple
+#
+
+BUILDDIR = ..
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = applescript
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/apple/applescript/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,71 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = apple.applescript
+LIBRARY = AppleScriptEngine
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = apple/applescript
+
+FILES_objc = \
+        $(TARGDIR)AppleScriptEngine.m \
+        $(TARGDIR)AppleScriptExecutionContext.m \
+        $(TARGDIR)AS_NS_ConversionUtils.m \
+        $(TARGDIR)NS_Java_ConversionUtils.m
+
+
+FILES_export = \
+	apple/applescript/AppleScriptEngine.java \
+	apple/applescript/AppleScriptEngineFactory.java
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+
+#
+# Extra rules
+#
+
+#
+# Add to ambient vpath to get files in a subdirectory
+#
+vpath %.m   $(call NativeSrcDirList,,native/apple/applescript)
+
+CPPFLAGS += \
+	-I$(TEMPDIR)/../../sun.awt/awt/CClassHeaders
+
+OTHER_LDLIBS = \
+    -framework Cocoa \
+    -framework Carbon \
+    -framework JavaNativeFoundation
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of java
+#
+
+BUILDDIR = ..
+PRODUCT = com
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = sun oracle
+
+ifeq ($(PLATFORM), macosx)
+    SUBDIRS += apple
+endif
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/apple/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building com/apple
+#
+
+BUILDDIR = ../..
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = osx osxui
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/apple/osx/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,91 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = com.apple.osx
+LIBRARY = osx
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = apple/launcher apple/security com/apple/concurrent com/apple/eio java/util/prefs
+
+FILES_objc += \
+    $(TARGDIR)Dispatch.m \
+    $(TARGDIR)CFileManager.m \
+    $(TARGDIR)KeystoreImpl.m \
+    $(TARGDIR)JavaAppLauncher.m \
+    $(TARGDIR)MacOSXPreferencesFile.m \
+    $(TARGDIR)SCDynamicStoreConfig.m
+
+FILES_export += \
+	com/apple/concurrent/LibDispatchNative.java \
+	com/apple/eio/FileManager.java \
+	apple/security/KeychainStore.java \
+	apple/launcher/JavaAppLauncher.java \
+	java/util/prefs/MacOSXPreferencesFile.java
+
+# TODO: couldn't figure out how to get resources working
+#LOCALE_SET_DEFINITION = jre
+#RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES = apple/launcher/appLauncherErrors.properties
+
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+
+#
+# Extra rules
+#
+
+#
+# Add to ambient vpath to get files in a subdirectory
+#
+vpath %.m   $(call NativeSrcDirList,,native/com/apple/concurrent)
+vpath %.m   $(call NativeSrcDirList,,native/com/apple/eio)
+vpath %.m   $(call NativeSrcDirList,,native/apple/launcher)
+vpath %.m   $(call NativeSrcDirList,,native/apple/security)
+vpath %.m   $(call NativeSrcDirList,,native/java/util)
+
+CPPFLAGS += \
+	$(call NativeSrcDirList,-I,native/com/apple/laf) \
+	$(call NativeSrcDirList,-I,native/apple/awt) \
+	$(call NativeSrcDirList,-I,native/sun/awt) \
+	$(call NativeSrcDirList,-I,native/sun/osxapp)
+
+OTHER_LDLIBS = \
+    -losxapp \
+    -framework Cocoa \
+    -framework ApplicationServices \
+    -framework JavaNativeFoundation \
+    -framework JavaRuntimeSupport \
+    -framework Security \
+    -framework SystemConfiguration
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/apple/osxui/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,106 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = com.apple.osxui
+LIBRARY = osxui
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = apple/laf com/apple/laf com/apple/eawt
+
+FILES_objc = \
+        $(TARGDIR)AquaFileView.m \
+        $(TARGDIR)AquaLookAndFeel.m \
+        $(TARGDIR)AquaNativeResources.m \
+        $(TARGDIR)JRSUIConstantSync.m \
+        $(TARGDIR)JRSUIController.m \
+        $(TARGDIR)JRSUIFocus.m \
+        $(TARGDIR)ScreenPopupFactory.m \
+        $(TARGDIR)ScreenMenu.m
+
+FILES_export = \
+	apple/laf/AquaLookAndFeel.java \
+	apple/laf/JRSUIConstants.java \
+	apple/laf/JRSUIControl.java \
+	apple/laf/JRSUIFocus.java \
+	apple/laf/JRSUIState.java \
+	apple/laf/JRSUIStateFactory.java \
+	apple/laf/JRSUIUtils.java \
+	com/apple/laf/AquaFileView.java \
+	com/apple/laf/AquaNativeResources.java \
+	com/apple/laf/ScreenPopupFactory.java \
+	com/apple/laf/ScreenMenu.java \
+	com/apple/laf/ScreenMenuBar.java \
+	com/apple/laf/ScreenMenuBarProvider.java \
+	com/apple/laf/ScreenMenuItem.java \
+	com/apple/laf/ScreenMenuItemCheckbox.java \
+	com/apple/laf/ScreenMenuItemUI.java \
+	com/apple/laf/ScreenMenuPropertyHandler.java \
+	com/apple/laf/ScreenMenuPropertyListener.java
+
+#RESOURCE_BUNDLES_COMPILED_PROPERTIES += \
+#	com/apple/laf/resources/aqua.properties \
+#	com/apple/laf/resources/aqua_de.properties \
+#	com/apple/laf/resources/aqua_fr.properties \
+#	com/apple/laf/resources/aqua_ja.properties
+
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+
+#
+# Extra rules
+#
+
+#
+# Add to ambient vpath to get files in a subdirectory
+#
+vpath %.m   $(call NativeSrcDirList,,native/com/apple/laf)
+vpath %.m $(call NativeSrcDirList,,native/com/apple/eawt)
+
+CPPFLAGS += \
+	$(call NativeSrcDirList,-I,native/com/apple/laf) \
+	$(call NativeSrcDirList,-I,native/apple/awt) \
+	$(call NativeSrcDirList,-I,native/sun/awt) \
+	$(call NativeSrcDirList,-I,native/sun/osxapp) \
+	-I$(TEMPDIR)/../../sun.awt/awt/CClassHeaders
+
+OTHER_LDLIBS = \
+    -lawt -losxapp \
+    -lawt_lwawt -L$(LIBDIR) -Xlinker -rpath -Xlinker @loader_path \
+    -framework Cocoa \
+    -framework Carbon \
+    -framework ApplicationServices \
+    -framework JavaNativeFoundation \
+    -framework JavaRuntimeSupport
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/oracle/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,54 @@
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PRODUCT = oracle
+#SUBDIRS_MAKEFLAGS += JAVAC_MAX_WARNINGS=true
+#SUBDIRS_MAKEFLAGS += JAVAC_WARNINGS_FATAL=true
+#SUBDIRS_MAKEFLAGS += JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation,-path
+include $(BUILDDIR)/common/Defs.gmk
+
+# build com/oracle/security/ucrypto on Solaris platform for non-OpenJDK builds
+UCRYPTO =
+ifndef OPENJDK
+  ifeq ($(PLATFORM), solaris)
+    UCRYPTO = security/ucrypto
+  endif
+endif
+
+JFR =
+ifndef OPENJDK
+ifndef JAVASE_EMBEDDED
+	JFR = jfr
+endif
+endif
+
+SUBDIRS = $(JFR) $(UCRYPTO)
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/oracle/jfr/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,73 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = oracle.jrockit.jfr
+LIBRARY = jfr
+PRODUCT = oracle
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Use mapfile
+#
+FILES_m = $(CLOSED_SHARE_SRC)/native/oracle/jfr/mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files to compile
+#
+FILES_c = VMJFR.c
+
+AUTO_FILES_JAVA_DIRS = com/oracle/jrockit/jfr oracle/jrockit/jfr
+
+# Find C source files
+#
+vpath %.c $(CLOSED_SHARE_SRC)/native/oracle/jfr
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+JVMLIB =
+JAVALIB =
+OTHER_LDLIBS =
+
+clean clobber::
+	$(RM) -r $(CLASSDESTDIR)/com/oracle/jrockit/jfr
+	$(RM) -r $(CLASSDESTDIR)/oracle/jrockit/jfr
+
+
+# Copy pre-shipped .jfs files
+JFR_LIBDIR = $(LIBDIR)/jfr
+JFR_SRCDIR = $(CLOSED_SHARE_SRC)/lib/jfr
+
+$(JFR_LIBDIR)/%.jfs: $(JFR_SRCDIR)/%.jfs
+	$(install-file)
+
+JFS_FILES := $(subst $(JFR_SRCDIR),$(JFR_LIBDIR),$(wildcard $(JFR_SRCDIR)/*.jfs))
+
+all build : $(JFS_FILES)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/oracle/security/ucrypto/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,30 @@
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+ifndef OPENJDK
+FILES_c = \
+        nativeFunc.c \
+	nativeCrypto.c
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/oracle/security/ucrypto/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,270 @@
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building ucrypto.jar and its native libraries.
+#
+# This file was modified from make/sun/security/pkcs11/Makefile.
+#
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Oracle
+# JDK builds respectively.)
+#
+# This Makefile does the "real" build of the Ucrypto provider files.
+# Since the sources are unavailable for OpenJDK, this Makefile is only
+# useful for JDK.
+#
+#
+# Main Targets (JDK on Solaris):
+#
+#     all                      The usual, ucrypto.jar plus the native libraries.
+#                                  builds and installs the prebuilt/signed jar.
+#
+#     clobber/clean            Cleans up the temp directory, ucrypto.jar, the
+#                              native libraries, and the config file from the
+#                              build area
+#
+#     jar                      Builds, signs and installs ucrypto.jar
+#                              (Can only be done on machines with access to
+#                               the signing keystore)
+#
+# Other lesser-used Targets (JDK on Solaris):
+#
+#     build-jar                Builds ucrypto.jar (no sign/install)
+#
+#     sign                     Builds/signs ucrypto.jar (no install)
+#
+#     release                  Builds all targets in preparation
+#                              for workspace integration.
+#                              (Can only be done on machines with access to
+#                               the signing keystore)
+#
+#     install-prebuilt         Installs the pre-built jar files
+#
+# NOTE: None of the above target will update the prebuilt provider binary
+# under the closed workspace. To update it, you must explicitly copy the
+# binary from either the tmp/signed or lib/ext directory.
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../../../..
+
+include $(BUILDDIR)/common/Defs.gmk
+
+ifndef OPENJDK
+  ifneq ($(PLATFORM), solaris)
+    all:
+  else
+    PACKAGE = com.oracle.security.ucrypto
+  LIBRARY = j2ucrypto
+  PRODUCT = oracle
+
+  #
+  # The following is for when we need to do postprocessing
+  # (signing/obfuscation) against a read-only build.  If the OUTPUTDIR
+  # isn't writable, the build currently crashes out.
+  #
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+
+  JAVAC_MAX_WARNINGS=false
+  JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation
+  JAVAC_WARNINGS_FATAL=true
+
+  #
+  # C and Java Files
+  #
+  include FILES_c.gmk
+
+  #
+  # Subdirectories of these are automatically included.
+  #
+  AUTO_FILES_JAVA_DIRS = com/oracle/security/ucrypto
+
+  #
+  # Java files that define native methods
+  #
+  FILES_export = \
+      com/oracle/security/ucrypto/UcryptoProvider.java \
+      com/oracle/security/ucrypto/NativeCipher.java \
+      com/oracle/security/ucrypto/NativeDigest.java \
+      com/oracle/security/ucrypto/NativeKey.java \
+      com/oracle/security/ucrypto/NativeRSASignature.java \
+      com/oracle/security/ucrypto/NativeRSACipher.java
+
+  #
+  # Find native code
+  #
+  vpath %.c \
+    $(CLOSED_PLATFORM_SRC)/native/com/oracle/security/ucrypto
+
+  #
+  # Find include files
+  #
+  OTHER_INCLUDES += \
+    -I$(CLOSED_PLATFORM_SRC)/native/com/oracle/security/ucrypto
+
+  #
+  # Rules
+  #
+  CLASSDESTDIR = $(TEMPDIR)/classes
+  JAVAHFLAGS = -bootclasspath \
+    "$(CLASSDESTDIR)$(CLASSPATH_SEPARATOR)$(CLASSBINDIR)"
+
+  include $(BUILDDIR)/common/Mapfile-vers.gmk
+  include $(BUILDDIR)/common/Library.gmk
+
+  #
+  # Libraries to link
+  #
+  OTHER_LDLIBS = -ldl
+
+  # Default config file
+  UCRYPTO_CFG_SRC   = $(CLOSED_SRC)/share/lib/security/ucrypto-solaris.cfg
+  UCRYPTO_CFG_BUILD = $(LIBDIR)/security/ucrypto-solaris.cfg
+
+  #
+  # We use a variety of subdirectories in the $(TEMPDIR) depending on what
+  # part of the build we're doing.  Build is initially done in the unsigned
+  # area and when files are signed, they will be placed in the appropriate area.
+  #
+  UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+  #
+  # Rules
+  #
+  all: ucrypto-cfg build-jar install-prebuilt
+	$(build-warning)
+
+  ucrypto-cfg: $(UCRYPTO_CFG_BUILD)
+
+  $(UCRYPTO_CFG_BUILD): $(UCRYPTO_CFG_SRC)
+	$(install-file)
+
+  include $(BUILDDIR)/javax/crypto/Defs-jce.gmk
+
+
+  # =====================================================
+  # Build the unsigned ucrypto.jar file.
+  #
+
+  JAR_DESTFILE = $(EXTDIR)/ucrypto.jar
+
+  #
+  # The ucrypto.jar needs to be in the extension class directory,
+  # therefore none of its classes can appear in $(CLASSBINDIR).
+  # Currently no one is using any of the internals, so these files
+  # should not have been built.
+  #
+
+  #
+  # Since the -C option to jar is used below, each directory entry must be
+  # preceded with the appropriate directory to "cd" into.
+  #
+  JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+  build-jar: $(UNSIGNED_DIR)/ucrypto.jar
+
+  #
+  # Build ucrypto.jar.
+  #
+  $(UNSIGNED_DIR)/ucrypto.jar: build
+	$(prep-target)
+	$(BOOT_JAR_CMD) cf $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+  #
+  # Sign ucrypto.jar
+  #
+  SIGNED_DIR = $(JCE_BUILD_DIR)/signed
+
+  sign: $(SIGNED_DIR)/ucrypto.jar
+
+  ifndef ALT_JCE_BUILD_DIR
+    $(SIGNED_DIR)/ucrypto.jar: $(UNSIGNED_DIR)/ucrypto.jar
+  else
+    #
+    # We have to remove the build dependency, otherwise, we'll try to rebuild it
+    # which we can't do on a read-only filesystem.
+    #
+    $(SIGNED_DIR)/ucrypto.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/ucrypto.jar ] ; then \
+            $(ECHO) "Couldn't find $(UNSIGNED_DIR)/ucrypto.jar"; \
+            exit 1; \
+        fi
+  endif
+	$(call sign-file, $(UNSIGNED_DIR)/ucrypto.jar)
+
+
+  # =====================================================
+  # Create the Release Engineering files.  Signed builds, etc.
+  #
+
+  release: $(SIGNED_DIR)/ucrypto.jar
+	$(RM) $(JCE_BUILD_DIR)/release/ucrypto.jar
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release
+	$(CP) $(SIGNED_DIR)/ucrypto.jar $(JCE_BUILD_DIR)/release
+	$(release-warning)
+
+
+  # =====================================================
+  # Install routines.
+  #
+
+  #
+  # Install ucrypto.jar, depending on which type is requested.
+  #
+  jar: $(JAR_DESTFILE)
+	$(release-warning)
+
+  $(JAR_DESTFILE): $(SIGNED_DIR)/ucrypto.jar
+	$(install-file)
+
+  install-prebuilt:
+	@$(ECHO) "\n>>>Installing prebuilt OracleUcrypto provider..."
+	$(RM) $(JAR_DESTFILE)
+	$(CP) $(PREBUILT_DIR)/ucrypto/ucrypto.jar $(JAR_DESTFILE)
+
+
+  # =====================================================
+  # Support routines.
+  #
+  clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(TEMPDIR) $(JCE_BUILD_DIR)
+	$(RM) -r $(UCRYPTO_CFG_BUILD)
+
+  .PHONY: build-jar jar sign release install-prebuilt
+
+  endif #ifneq ($(PLATFORM), solaris)
+endif #ifndef OPENJDK
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/oracle/security/ucrypto/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,69 @@
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+                JNI_OnLoad;
+                Java_com_oracle_security_ucrypto_UcryptoProvider_loadLibraries;
+                Java_com_oracle_security_ucrypto_UcryptoProvider_getMechList;
+		Java_com_oracle_security_ucrypto_NativeDigest_nativeInit;
+                Java_com_oracle_security_ucrypto_NativeDigest_nativeUpdate;
+                Java_com_oracle_security_ucrypto_NativeDigest_nativeDigest;
+                Java_com_oracle_security_ucrypto_NativeDigest_nativeClone;
+                Java_com_oracle_security_ucrypto_NativeDigest_nativeFree;
+		Java_com_oracle_security_ucrypto_NativeCipher_nativeInit;
+		Java_com_oracle_security_ucrypto_NativeCipher_nativeUpdate;
+		Java_com_oracle_security_ucrypto_NativeCipher_nativeFinal;
+                Java_com_oracle_security_ucrypto_NativeKey_nativeFree;
+                Java_com_oracle_security_ucrypto_NativeKey_00024RSAPrivateCrt_nativeInit;
+                Java_com_oracle_security_ucrypto_NativeKey_00024RSAPublic_nativeInit;
+		Java_com_oracle_security_ucrypto_NativeRSASignature_nativeInit;
+		Java_com_oracle_security_ucrypto_NativeRSASignature_nativeUpdate__JZ_3BII;
+		Java_com_oracle_security_ucrypto_NativeRSASignature_nativeUpdate__JZJI;
+		Java_com_oracle_security_ucrypto_NativeRSASignature_nativeFinal;
+		Java_com_oracle_security_ucrypto_NativeRSACipher_nativeAtomic;
+
+                JavaCritical_com_oracle_security_ucrypto_NativeDigest_nativeInit;
+                JavaCritical_com_oracle_security_ucrypto_NativeDigest_nativeUpdate;
+                JavaCritical_com_oracle_security_ucrypto_NativeDigest_nativeDigest;
+                JavaCritical_com_oracle_security_ucrypto_NativeDigest_nativeClone;
+                JavaCritical_com_oracle_security_ucrypto_NativeDigest_nativeFree;
+                JavaCritical_com_oracle_security_ucrypto_NativeCipher_nativeInit;
+                JavaCritical_com_oracle_security_ucrypto_NativeCipher_nativeUpdate;
+                JavaCritical_com_oracle_security_ucrypto_NativeCipher_nativeFinal;
+                JavaCritical_com_oracle_security_ucrypto_NativeKey_nativeFree;
+                JavaCritical_com_oracle_security_ucrypto_NativeKey_00024RSAPrivateCrt_nativeInit;
+                JavaCritical_com_oracle_security_ucrypto_NativeKey_00024RSAPublic_nativeInit;
+		JavaCritical_com_oracle_security_ucrypto_NativeRSASignature_nativeInit;
+		JavaCritical_com_oracle_security_ucrypto_NativeRSASignature_nativeUpdate__JZ_3BII;
+		JavaCritical_com_oracle_security_ucrypto_NativeRSASignature_nativeUpdate__JZJI;
+		JavaCritical_com_oracle_security_ucrypto_NativeRSASignature_nativeFinal;
+                JavaCritical_com_oracle_security_ucrypto_NativeRSACipher_nativeAtomic;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/sun/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,54 @@
+
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building com/sun
+#
+
+BUILDDIR = ../..
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+ifndef OPENJDK
+  ORG_EXISTS := $(call DirExists,$(CLOSED_SRC)/share/classes/sun/org,,)
+  ifneq ("$(ORG_EXISTS)", "") 
+    SCRIPT_SUBDIR = script
+  endif
+endif
+
+# jarsigner is part of JRE
+SUBDIRS = 
+
+SUBDIRS_management =
+SUBDIRS_enterprise = crypto/provider
+SUBDIRS_misc       = 
+
+# Omit mirror since it's built with the apt tool.
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/com/sun/crypto/provider/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,275 @@
+#
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building sunjce_provider.jar.
+#
+# This file was derived from make/javax/crypto/Makefile.
+#
+
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Sun JDK builds
+# respectively.)
+#
+# JCE builds are very different between OpenJDK and JDK.  The OpenJDK JCE
+# jar files do not require signing, but those for JDK do.  If an unsigned
+# jar file is installed into JDK, things will break when the crypto
+# routines are called.
+#
+# This Makefile does the "real" build of the JCE files.  There are some
+# javac options currently specific to JCE, so we recompile now to make
+# sure any implicit compilations didn't use any incorrect flags.
+#
+# For OpenJDK, the jar files built here are installed directly into the
+# OpenJDK.
+#
+# For JDK, the binaries use pre-built/pre-signed binary files stored in
+# the closed workspace that are not shipped in the OpenJDK workspaces.
+# We still build the JDK files here to verify the files compile, and in
+# preparation for possible signing.  Developers working on JCE in JDK
+# must sign the JCE files before testing.  The JCE signing key is kept
+# separate from the JDK workspace to prevent its disclosure.
+# 
+# SPECIAL NOTE TO JCE/JDK developers:  The source files must eventually
+# be built and signed, and the resulting jar files MUST BE CHECKED INTO
+# THE CLOSED PART OF THE WORKSPACE*.  This separate step *MUST NOT BE
+# FORGOTTEN*, otherwise a bug fixed in the source code will not be
+# reflected in the shipped binaries.  The "release" target should be
+# used to generate the required files.
+#
+# There are a number of targets to help both JDK/OpenJDK developers.
+#
+# Main Targets (JDK/OPENJDK):
+#
+#     all/clobber/clean        The usual.
+#                                  If OpenJDK, installs sunjce_provider.jar.
+#                                  If JDK, installs prebuilt
+#                                      sunjce_provider.jar.
+#
+#     jar                      Builds/installs sunjce_provider.jar
+#                                  If OpenJDK, does not sign.
+#                                  If JDK, tries to sign.
+#
+# Other lesser-used Targets (JDK/OPENJDK):
+#
+#     build-jar                Builds sunjce_provider.jar
+#                                  (does not sign/install)
+#
+#     install-jar              Alias for "jar" above.
+#
+# Other targets (JDK only):
+#
+#     sign                     Alias for sign-jar
+#         sign-jar             Builds/signs sunjce_provider.jar (no install)
+#
+#     release                  Builds all targets in preparation
+#                              for workspace integration.
+#
+#     install-prebuilt         Installs the pre-built jar files
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../../../..
+PACKAGE = com.sun.crypto.provider
+PRODUCT = sun
+
+#
+# The following is for when we need to do postprocessing
+# (signing) against a read-only build.  If the OUTPUTDIR
+# isn't writable, the build currently crashes out.
+#
+ifndef OPENJDK
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+endif
+
+JAVAC_MAX_WARNINGS = false
+JAVAC_LINT_OPTIONS = -Xlint:all,-deprecation
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Location for the newly built classfiles.
+#
+CLASSDESTDIR = $(TEMPDIR)/classes
+
+#
+# Subdirectories of these are automatically included.
+#
+AUTO_FILES_JAVA_DIRS = \
+    com/sun/crypto/provider
+
+include $(BUILDDIR)/common/Classes.gmk
+
+#
+# Rules
+#
+
+#
+# Some licensees do not get the security sources, but we still need to
+# be able to build "all" for them.  Check here to see if the sources were
+# available.  If not, then we don't need to continue this rule.
+#
+
+ifdef OPENJDK
+all: build-jar install-jar
+else  # OPENJDK
+ifeq ($(strip $(FILES_java)),)
+all: install-prebuilt
+	$(no-source-warning)
+else  # FILES_java available
+all: build-jar install-prebuilt
+	$(build-warning)
+endif # $(FILES_java) available
+endif # OPENJDK
+
+#
+# We use a variety of subdirectories in the $(TEMPDIR) depending on what
+# part of the build we're doing.  Both OPENJDK/JDK builds are initially
+# done in the unsigned area.  When files are signed in JDK, they will be
+# placed in the appropriate areas.
+#
+UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+include $(BUILDDIR)/javax/crypto/Defs-jce.gmk
+
+
+# =====================================================
+# Build the unsigned sunjce_provider.jar file.
+#
+
+JAR_DESTFILE = $(EXTDIR)/sunjce_provider.jar
+
+#
+# The sunjce_provider.jar needs to be in the extension class directory,
+# therefore none of its classes should appear in $(CLASSBINDIR).
+# Currently no one is using any of the SunJCE internals, so these files
+# should not have been built.
+#
+
+#
+# Since the -C option to jar is used below, each directory entry must be
+# preceded with the appropriate directory to "cd" into.
+#
+JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+build-jar: $(UNSIGNED_DIR)/sunjce_provider.jar
+
+#
+# Build sunjce_provider.jar.
+#
+$(UNSIGNED_DIR)/sunjce_provider.jar: build $(JCE_MANIFEST_FILE)
+	$(prep-target)
+	$(BOOT_JAR_CMD) cmf $(JCE_MANIFEST_FILE) $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+
+ifndef OPENJDK
+# =====================================================
+# Sign the provider jar file.  Not needed for OpenJDK.
+#
+
+SIGNED_DIR = $(JCE_BUILD_DIR)/signed
+
+sign: sign-jar
+
+sign-jar: $(SIGNED_DIR)/sunjce_provider.jar
+
+ifndef ALT_JCE_BUILD_DIR
+$(SIGNED_DIR)/sunjce_provider.jar: $(UNSIGNED_DIR)/sunjce_provider.jar
+else
+#
+# We have to remove the build dependency, otherwise, we'll try to rebuild it
+# which we can't do on a read-only filesystem.
+#
+$(SIGNED_DIR)/sunjce_provider.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/sunjce_provider.jar ] ; then \
+	    $(ECHO) "Couldn't find $(UNSIGNED_DIR)/sunjce_provider.jar"; \
+	    exit 1; \
+	fi
+endif
+	$(call sign-file, $(UNSIGNED_DIR)/sunjce_provider.jar)
+
+
+# =====================================================
+# Create the Release Engineering files.  Signed builds, etc.
+#
+
+release: $(SIGNED_DIR)/sunjce_provider.jar
+	$(RM) $(JCE_BUILD_DIR)/release/sunjce_provider.jar
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release
+	$(CP) $(SIGNED_DIR)/sunjce_provider.jar $(JCE_BUILD_DIR)/release
+	$(release-warning)
+
+endif # OPENJDK
+
+
+# =====================================================
+# Install routines.
+#
+
+#
+# Install sunjce_provider.jar, depending on which type is requested.
+#
+install-jar jar: $(JAR_DESTFILE)
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifdef OPENJDK
+$(JAR_DESTFILE): $(UNSIGNED_DIR)/sunjce_provider.jar
+else
+$(JAR_DESTFILE): $(SIGNED_DIR)/sunjce_provider.jar
+endif
+	$(install-file)
+
+ifndef OPENJDK
+install-prebuilt:
+	@$(ECHO) "\n>>>Installing prebuilt SunJCE provider..."
+	$(RM) $(JAR_DESTFILE)
+	$(CP) $(PREBUILT_DIR)/jce/sunjce_provider.jar $(JAR_DESTFILE)
+endif
+
+
+# =====================================================
+# Support routines.
+#
+
+clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(TEMPDIR) $(JCE_BUILD_DIR)
+
+.PHONY: build-jar jar install-jar
+ifndef OPENJDK
+.PHONY: sign sign-jar release install-prebuilt
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Classes.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,67 @@
+#
+# Copyright (c) 1995, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+include $(JDK_TOPDIR)/makefiles/common/Rules.gmk
+
+#
+# Say you built classes into $(ALT_CLASSBINDIR) and then at the end of
+# the build you might want to copy them over to $(ALT_CLASSDESTDIR);
+# this rule takes care of that.  No one should really set these
+# variables except the bootstrap/recompile stage of the java compiler.
+#
+ifdef ALT_CLASSBINDIR
+
+# By default post-processing is copying.  Suppose you want to build
+# a jar file then set ALT_CLASSES_DISPOSITION to '../../dest/nameof.jar'
+# before including this file.
+ifndef ALT_CLASSES_DISPOSITION
+ALT_CLASSES_DISPOSITION = copy-classes
+endif
+
+build : $(ALT_CLASSES_DISPOSITION)
+
+copy-classes: 
+ifneq ($(ALT_CLASSBINDIR), $(ALT_CLASSDESTDIR))
+	@if [ -s $(TEMPDIR)/.classes.list ]; then \
+	  mkdir -p $(ALT_CLASSDESTDIR); \
+	  echo "Copying $(ALT_CLASSBINDIR)..."; \
+	  echo "(cd $(ALT_CLASSBINDIR); tar cf - .) | \
+			(cd $(ALT_CLASSDESTDIR); tar xf -)"; \
+	  (cd $(ALT_CLASSBINDIR); tar cf - .) | \
+			(cd $(ALT_CLASSDESTDIR); tar xf -); \
+	fi
+else # ALT_CLASSBINDIR
+	@if [ -s $(TEMPDIR)/.classes.list ]; then \
+	  echo "Copy source and destination are the same: $(ALT_CLASSBINDIR) -- Copy skipped..."; \
+	fi
+endif # ALT_CLASSBINDIR
+
+.PHONY: copy-classes
+endif # ALT_CLASSBINDIR
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Cscope.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,100 @@
+#
+# Copyright (c) 1998, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# The cscope.out file is made in the current directory and spans the entire
+# source tree.
+#
+# Things to note:
+#	1. We use relative names for cscope.
+#	2. We *don't* remove the old cscope.out file, because cscope is smart
+#	   enough to only build what has changed.  It can be confused, however,
+#	   if files are renamed or removed, so it may be necessary to manually
+#	   remove cscope.out if a lot of reorganization has occurred.
+#
+CSDIRS	= $(JDK_TOPDIR)/src $(JDK_TOPDIR)/build
+CSINCS	= $(CSDIRS:%=-I%)
+
+#
+# Set CSFLAGS env variable to -b when using fast cscope to build the fast
+# (but large) cscope data bases.
+#
+CSCOPE	= cscope-fast
+ifeq ($(CSCOPE), cscope-fast)
+CSFLAGS	= -b
+endif
+
+#
+# Adding .java files pushes the file count of a full workspace up about 2500
+# files, which slows database lookup.  Thus allow these files to be added from
+# the environment (CSCLASSES=yes).
+#
+ifdef	CSCLASSES
+ADDCLASSES=	-o -name '*.java'
+endif
+
+#
+# Adding CClassHeaders also pushes the file count of a full workspace up about
+# 200 files (these files also don't exist in a new workspace, and thus will
+# cause the recreation of the database as they get created, which might seem
+# A little confusing).  Thus allow these files to be added from the environment
+# (CSHEADERS=yes).
+#
+ifndef	CSHEADERS
+RMCCHEADERS=	-o -name CClassHeaders
+endif
+
+
+.PRECIOUS:	cscope.out
+
+cscope.out: cscope.files FRC
+	$(CSCOPE) $(CSFLAGS)
+
+#
+# What files should we include?  A simple rule might be just those files under
+# SCM control, however this would miss files we create like the opcodes and
+# CClassHeaders.  The following attempts to find everything that is *useful*.
+# (demo directories contain many .java files
+# that probably aren't useful for development, and the pkgarchive may contain
+# duplicates of files within the source hierarchy).  The ordering of the .raw
+# file is an attempt to make cscope display the most relevant files first.
+#
+cscope.files: FRC
+	@-$(RM) cscope.files cscope.files.raw
+	echo "$(CSINCS)" > cscope.files
+	-find $(CSDIRS) $(SCM_DIRS_prune) -o -type d \( -name '.del-*' -o \
+	    -name '*demo' -o -name pkgarchive $(RMCCHEADERS) \) -prune -o \
+	    -type f \( -name '*.[Ccshlxy]' -o -name '*.il' -o -name '*.cc' -o \
+	    -name 'Makefile*' -o -name GNUmakefile -o -name '*.gmk' -o \
+	    -name '*.cpp' $(ADDCLASSES) \) -print > cscope.files.raw
+	-egrep -v "\.java|\/build\/"	cscope.files.raw >> cscope.files
+	-fgrep ".java"			cscope.files.raw >> cscope.files
+	-fgrep "/build/"		cscope.files.raw >> cscope.files
+	@-$(RM) cscope.files.raw
+
+cscope.clean:
+	-$(RM) cscope.files cscope.files.raw cscope.out
+
+FRC:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs-embedded.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,76 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Variable definitions for SE Embedded builds.  This file should
+# not contain rules.
+#
+ifdef JAVASE_EMBEDDED
+
+# Compress jar files
+COMPRESS_JARS = true
+
+# Don't mmap zip files
+LIBZIP_CAN_USE_MMAP = false
+
+# Disable ALSA version check
+REQUIRED_ALSA_VERSION =
+
+# Compilation settings
+OTHER_CPPFLAGS += -DJAVASE_EMBEDDED
+
+# Product naming
+PRODUCT_SUFFIX = SE Runtime Environment for Embedded
+RUNTIME_NAME = $(PRODUCT_NAME) $(PRODUCT_SUFFIX)
+
+# Reduced JRE locations
+JRE_REDUCED_HEADLESS_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2re-reduced-headless-image
+JRE_REDUCED_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2re-reduced-image
+
+# Override on linux to further reduce binary/lib sizes in product build
+ifeq ($(PLATFORM), linux)
+  ifeq ($(VARIANT), OPT)
+    ifneq ($(NO_STRIP), true)
+      ifneq ($(DEBUG_BINARIES), true)
+        POST_STRIP_PROCESS = $(STRIP) --strip-unneeded
+      endif
+    endif
+  endif
+endif
+
+# NIO Platform specific source file location
+ifdef CROSS_COMPILE_ARCH
+  NIO_PLATFORM_CLASSES_ROOT_DIR = $(CLOSED_PLATFORM_SRC)/classes/
+endif
+
+# For ARM sflt we need to link to a library with improved FP accuracy
+# and it must be linked after fdlibm - this places it at the end after libc
+# -z muldefs avoids linker errors for duplicate symbols.
+ifeq ($(CROSS_COMPILE_ARCH), arm)
+  EXTRA_LIBS +=  $(EXT_LIBS_PATH)/sflt_glibc_jdk.a -Xlinker -z -Xlinker muldefs
+endif
+
+endif # JAVASE_EMBEDDED
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs-linux.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,430 @@
+#
+# Copyright (c) 1999, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile to specify compiler flags for programs and libraries
+# targeted to Linux.  Should not contain any rules.
+#
+# WARNING: This file is shared with other workspaces. 
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+# Warning: the following variables are overriden by Defs.gmk. Set
+# values will be silently ignored:
+#   CFLAGS        (set $(OTHER_CFLAGS) instead)
+#   CPPFLAGS      (set $(OTHER_CPPFLAGS) instead)
+#   CXXFLAGS      (set $(OTHER_CXXFLAGS) instead)
+#   LDFLAGS       (set $(OTHER_LDFAGS) instead)
+#   LDLIBS        (set $(EXTRA_LIBS) instead)
+#   LDLIBS_COMMON (set $(EXTRA_LIBS) instead)
+
+# Get shared JDK settings
+include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
+
+# Part of INCREMENTAL_BUILD mechanism.
+#   Compiler emits things like:  path/file.o: file.h
+#   We want something like: relative_path/file.o relative_path/file.d: file.h
+CC_DEPEND	 = -MM
+CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g'
+
+ifndef PLATFORM_SRC
+  PLATFORM_SRC = $(BUILDDIR)/../src/solaris
+endif # PLATFORM_SRC
+
+# Platform specific closed sources
+ifndef OPENJDK
+  ifndef CLOSED_PLATFORM_SRC
+    CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
+  endif
+endif
+
+# platform specific include files
+PLATFORM_INCLUDE_NAME = $(PLATFORM)
+PLATFORM_INCLUDE      = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
+
+# suffix used for make dependencies files.
+DEPEND_SUFFIX = d
+# The suffix applied to the library name for FDLIBM
+FDDLIBM_SUFFIX = a
+# The suffix applied to scripts (.bat for windows, nothing for unix)
+SCRIPT_SUFFIX =
+# CC compiler object code output directive flag value
+CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
+
+# Default OBJCOPY comes from GNU Binutils on Linux:
+DEF_OBJCOPY=/usr/bin/objcopy
+ifdef CROSS_COMPILE_ARCH
+  # don't try to generate .debuginfo files when cross compiling
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
+      "skipping .debuginfo generation.")
+  OBJCOPY=
+else
+  OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
+  ifneq ($(ALT_OBJCOPY),)
+    _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
+    # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
+    OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
+  endif
+endif
+
+ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+# The setting of OBJCOPY above enables the JDK build to import
+# .debuginfo files from the HotSpot build. However, adding FDS
+# support to the JDK build will occur in phases so a different
+# make variable is used to indicate that a particular library
+# supports FDS.
+
+ifeq ($(OBJCOPY),)
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
+else
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+
+  # Library stripping policies for .debuginfo configs:
+  #   all_strip - strips everything from the library
+  #   min_strip - strips most stuff from the library; leaves minimum symbols
+  #   no_strip  - does not strip the library at all
+  #
+  # Oracle security policy requires "all_strip". A waiver was granted on
+  # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
+  #
+  DEF_STRIP_POLICY="min_strip"
+  ifeq ($(ALT_STRIP_POLICY),)
+    STRIP_POLICY=$(DEF_STRIP_POLICY)
+  else
+    STRIP_POLICY=$(ALT_STRIP_POLICY)
+  endif
+
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
+endif
+endif
+
+#
+# Default optimization
+#
+
+ifndef OPTIMIZATION_LEVEL
+  ifeq ($(PRODUCT), java)
+    OPTIMIZATION_LEVEL = HIGHER
+  else
+    OPTIMIZATION_LEVEL = LOWER
+  endif
+endif
+ifndef FASTDEBUG_OPTIMIZATION_LEVEL
+  FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
+endif
+
+CC_OPT/NONE     = 
+CC_OPT/LOWER    = -O2
+CC_OPT/HIGHER   = -O3
+CC_OPT/HIGHEST  = -O3
+
+CC_OPT          = $(CC_OPT/$(OPTIMIZATION_LEVEL))
+
+# For all platforms, do not omit the frame pointer register usage. 
+#    We need this frame pointer to make it easy to walk the stacks.
+#    This should be the default on X86, but ia64 and amd64 may not have this
+#    as the default.
+CFLAGS_REQUIRED_amd64   += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_i586    += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_ia64    += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9
+LDFLAGS_COMMON_sparcv9  += -m64 -mcpu=v9
+CFLAGS_REQUIRED_sparc   += -m32 -mcpu=v9
+LDFLAGS_COMMON_sparc    += -m32 -mcpu=v9
+CFLAGS_REQUIRED_arm     += -fsigned-char -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_ppc     += -fsigned-char -D_BIG_ENDIAN
+ifeq ($(ZERO_BUILD), true)
+  CFLAGS_REQUIRED       =  $(ZERO_ARCHFLAG)
+  ifeq ($(ZERO_ENDIANNESS), little)
+    CFLAGS_REQUIRED     += -D_LITTLE_ENDIAN
+  endif
+  LDFLAGS_COMMON        += $(ZERO_ARCHFLAG)
+else
+  CFLAGS_REQUIRED       =  $(CFLAGS_REQUIRED_$(ARCH))
+  LDFLAGS_COMMON        += $(LDFLAGS_COMMON_$(ARCH))
+endif
+
+# If this is a --hash-style=gnu system, use --hash-style=both
+#   The gnu .hash section won't work on some Linux systems like SuSE 10.
+_HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | $(GREP) -- '--hash-style=gnu')
+ifneq ($(_HAS_HASH_STYLE_GNU),)
+  LDFLAGS_HASH_STYLE = -Wl,--hash-style=both
+endif
+LDFLAGS_COMMON          += $(LDFLAGS_HASH_STYLE)
+
+#
+# Selection of warning messages
+#
+GCC_INHIBIT	= -Wno-unused -Wno-parentheses
+GCC_STYLE	= 
+GCC_WARNINGS	= -W -Wall $(GCC_STYLE) $(GCC_INHIBIT)
+
+#
+# Treat compiler warnings as errors, if warnings not allowed
+#
+ifeq ($(COMPILER_WARNINGS_FATAL),true)
+  GCC_WARNINGS += -Werror
+endif
+
+#
+# Misc compiler options
+#
+ifneq ($(ARCH),ppc)
+  CFLAGS_COMMON   = -fno-strict-aliasing
+endif 
+PIC_CODE_LARGE = -fPIC
+PIC_CODE_SMALL = -fpic
+GLOBAL_KPIC = $(PIC_CODE_LARGE)
+CFLAGS_COMMON   += $(GLOBAL_KPIC) $(GCC_WARNINGS)
+ifeq ($(ARCH), amd64)
+ CFLAGS_COMMON += -pipe
+endif
+
+# Linux 64bit machines use Dwarf2, which can be HUGE, have fastdebug use -g1
+DEBUG_FLAG = -g
+ifeq ($(FASTDEBUG), true)
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    DEBUG_FLAG = -g1
+  endif
+endif
+
+# DEBUG_BINARIES overrides everything, use full -g debug information
+ifeq ($(DEBUG_BINARIES), true)
+  DEBUG_FLAG = -g
+  CFLAGS_REQUIRED += $(DEBUG_FLAG)
+endif
+
+CFLAGS_OPT      = $(CC_OPT)
+CFLAGS_DBG      = $(DEBUG_FLAG)
+CFLAGS_COMMON += $(CFLAGS_REQUIRED)
+
+CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS)
+CXXFLAGS_OPT	= $(CC_OPT)
+CXXFLAGS_DBG	= $(DEBUG_FLAG)
+CXXFLAGS_COMMON += $(CFLAGS_REQUIRED)
+
+# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java
+ifeq ($(FASTDEBUG), true)
+  CFLAGS_DBG    += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+  CXXFLAGS_DBG	+= $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+endif
+
+CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"'
+
+# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here)
+ifneq ($(ARCH),alpha)
+  CPP_ARCH_FLAGS += -D$(ARCH)
+else
+  CPP_ARCH_FLAGS += -D_$(ARCH)_
+endif
+
+CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -DLINUX $(VERSION_DEFINES) \
+		  -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT
+
+ifeq ($(ARCH_DATA_MODEL), 64)
+CPPFLAGS_COMMON += -D_LP64=1
+endif
+
+CPPFLAGS_OPT    = -DNDEBUG
+CPPFLAGS_DBG    = -DDEBUG
+ifneq ($(PRODUCT), java)
+  CPPFLAGS_DBG    += -DLOGGING 
+endif
+
+ifdef LIBRARY
+  # Libraries need to locate other libraries at runtime, and you can tell
+  #   a library where to look by way of the dynamic runpaths (RPATH or RUNPATH)
+  #   buried inside the .so. The $ORIGIN says to look relative to where
+  #   the library itself is and it can be followed with relative paths from
+  #   that. By default we always look in $ORIGIN, optionally we add relative
+  #   paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths.
+  #   On Linux we add a flag -z origin, not sure if this is necessary, but 
+  #   doesn't seem to hurt.
+  #   The environment variable LD_LIBRARY_PATH will over-ride these runpaths.
+  #   Try: 'readelf -d lib*.so' to see these settings in a library.
+  #
+  Z_ORIGIN_FLAG/sparc = -Xlinker -z -Xlinker origin
+  Z_ORIGIN_FLAG/i586  = -Xlinker -z -Xlinker origin
+  Z_ORIGIN_FLAG/amd64 = -Xlinker -z -Xlinker origin 
+  Z_ORIGIN_FLAG/ia64  = -Xlinker -z -Xlinker origin
+  Z_ORIGIN_FLAG/arm   = 
+  Z_ORIGIN_FLAG/ppc   =
+  Z_ORIGIN_FLAG/zero  = -Xlinker -z -Xlinker origin
+
+  LDFLAG_Z_ORIGIN = $(Z_ORIGIN_FLAG/$(ARCH_FAMILY))
+
+  LDFLAGS_COMMON += $(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN
+  LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=$(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN/%)
+
+endif
+
+EXTRA_LIBS += -lc
+
+LDFLAGS_DEFS_OPTION  = -Xlinker -z -Xlinker defs
+#LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
+
+#
+# -L paths for finding and -ljava
+#
+LDFLAGS_OPT     = -Xlinker -O1
+LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH)
+LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX)
+
+#
+# -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always
+# statically link libgcc but will print a warning with the flag. We don't 
+# want the warning, so check gcc version first.
+#
+ifeq ($(CC_MAJORVER),3)
+  OTHER_LDFLAGS  += -static-libgcc
+endif
+
+# Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
+#   (See Rules.gmk) The gcc 5 compiler might have an option for this?
+AUTOMATIC_PCH_OPTION = 
+
+#
+# Post Processing of libraries/executables
+#
+ifeq ($(VARIANT), OPT)
+  ifneq ($(NO_STRIP), true)
+    ifneq ($(DEBUG_BINARIES), true)
+      # Debug 'strip -g' leaves local function Elf symbols (better stack
+      # traces)
+      POST_STRIP_PROCESS = $(STRIP) -g
+    endif
+  endif
+endif
+
+#
+# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o
+#
+LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker
+
+#
+# Support for Quantify.
+#
+ifdef QUANTIFY
+QUANTIFY_CMD = quantify
+QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes
+LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS)
+endif
+
+#
+# Path and option to link against the VM, if you have to.  Note that
+# there are libraries that link against only -ljava, but they do get
+# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas
+# the library itself should not.
+#
+VM_NAME         = server
+# First try to link against server, if that does not exist link against client.
+JVMLIB          = -L$(LIBDIR)/$(LIBARCH)/server -L$(LIBDIR)/$(LIBARCH)/client -ljvm
+JAVALIB         = -ljava $(JVMLIB)
+
+#
+# We want to privatize JVM symbols on Solaris. This is so the user can
+# write a function called FindClass and this should not override the 
+# FindClass that is inside the JVM. At this point in time we are not
+# concerned with other JNI libraries because we hope that there will
+# not be as many clashes there.
+#
+PRIVATIZE_JVM_SYMBOLS = false
+
+USE_PTHREADS = true
+override ALT_CODESET_KEY         = _NL_CTYPE_CODESET_NAME
+override AWT_RUNPATH             =
+override HAVE_ALTZONE            = false
+override HAVE_FILIOH             = false
+override HAVE_GETHRTIME          = false
+override HAVE_GETHRVTIME         = false
+override HAVE_SIGIGNORE          = true
+override LEX_LIBRARY             = -lfl
+ifeq ($(STATIC_CXX),true)
+override LIBCXX                  = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic
+else
+override LIBCXX                  = -lstdc++
+endif
+override LIBPOSIX4               =
+override LIBSOCKET               =
+override LIBNSL                  =
+override LIBSCF                  =
+override LIBTHREAD               =
+override LIBDL                   = -ldl
+override MOOT_PRIORITIES         = true
+override NO_INTERRUPTIBLE_IO     = true
+ifeq ($(ARCH), amd64)
+override OPENWIN_LIB             = $(OPENWIN_HOME)/lib64
+else
+override OPENWIN_LIB             = $(OPENWIN_HOME)/lib
+endif
+override OTHER_M4FLAGS           = -D__GLIBC__ -DGNU_ASSEMBLER
+override SUN_CMM_SUBDIR          =
+override THREADS_FLAG            = native
+override USE_GNU_M4              = true
+override USING_GNU_TAR           = true
+override WRITE_LIBVERSION        = false
+
+# USE_EXECNAME forces the launcher to look up argv[0] on $PATH, and put the
+# resulting resolved absolute name of the executable in the environment
+# variable EXECNAME.  That executable name is then used that to locate the
+# installation area.
+override USE_EXECNAME            = true
+
+# If your platform has DPS, it will have Type1 fonts too, in which case
+# it is best to enable DPS support until such time as 2D's rasteriser
+# can fully handle Type1 fonts in all cases. Default is "yes".
+# HAVE_DPS should only be "no" if the platform has no DPS headers or libs
+# DPS (Displayable PostScript) is available on Solaris machines
+HAVE_DPS = no
+
+#
+# Japanese manpages
+#
+JA_SOURCE_ENCODING = eucJP
+JA_TARGET_ENCODINGS = UTF-8
+
+# Settings for the JDI - Serviceability Agent binding.
+HOTSPOT_SALIB_PATH   = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
+SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
+SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
+
+# The JDI - Serviceability Agent binding is not currently supported
+# on Linux-ia64.
+ifeq ($(ARCH), ia64)
+  INCLUDE_SA = false
+else
+  INCLUDE_SA = true
+endif
+
+ifdef CROSS_COMPILE_ARCH
+  # X11 headers are not under /usr/include
+  OTHER_CFLAGS += -I$(OPENWIN_HOME)/include
+  OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include
+  OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs-macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,402 @@
+#
+# Copyright (c) 1999, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile to specify compiler flags for programs and libraries
+# targeted to MACOSX.  Should not contain any rules.
+#
+# WARNING: This file is shared with other workspaces. 
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+# Warning: the following variables are overriden by Defs.gmk. Set
+# values will be silently ignored:
+#   CFLAGS        (set $(OTHER_CFLAGS) instead)
+#   CPPFLAGS      (set $(OTHER_CPPFLAGS) instead)
+#   CXXFLAGS      (set $(OTHER_CXXFLAGS) instead)
+#   LDFLAGS       (set $(OTHER_LDFAGS) instead)
+#   LDLIBS        (set $(EXTRA_LIBS) instead)
+#   LDLIBS_COMMON (set $(EXTRA_LIBS) instead)
+
+# Get shared JDK settings
+include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
+
+# Part of INCREMENTAL_BUILD mechanism.
+#   Compiler emits things like:  path/file.o: file.h
+#   We want something like: relative_path/file.o relative_path/file.d: file.h
+CC_DEPEND	 = -MM
+CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g'
+
+ifndef PLATFORM_SRC
+  PLATFORM_SRC = $(BUILDDIR)/../src/solaris
+endif # PLATFORM_SRC
+
+PLATFORM_SRC_MACOS = $(BUILDDIR)/../src/macosx
+
+# BSD build pulls its platform sources from the solaris tree.
+JAVA_SRCDIR_LIST = src/$(PLATFORM) src/solaris src/share
+NATIVE_SRCDIR_LIST = src/$(PLATFORM) src/solaris src/share
+
+# Platform specific closed sources
+ifndef OPENJDK
+  ifndef CLOSED_PLATFORM_SRC
+    CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
+  endif
+endif
+
+# platform specific include files
+PLATFORM_INCLUDE_NAME = $(OS_NAME)
+PLATFORM_INCLUDE      = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
+
+# suffix used for make dependencies files.
+DEPEND_SUFFIX = d
+# The suffix applied to the library name for FDLIBM
+FDDLIBM_SUFFIX = a
+# The suffix applied to scripts (.bat for windows, nothing for unix)
+SCRIPT_SUFFIX =
+# CC compiler object code output directive flag value
+CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
+CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required!
+
+#
+# Default optimization
+#
+
+ifndef OPTIMIZATION_LEVEL
+  ifeq ($(PRODUCT), java)
+    OPTIMIZATION_LEVEL = HIGHER
+  else
+    OPTIMIZATION_LEVEL = LOWER
+  endif
+endif
+ifndef FASTDEBUG_OPTIMIZATION_LEVEL
+  FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
+endif
+
+# For macosx use -Os by default, unless -O3 can be proved to be worth the cost, as per policy
+# <http://wikis.sun.com/display/OpenJDK/Mac+OS+X+Port+Compilers>
+CC_OPT/NONE     = 
+CC_OPT/LOWER    = -Os
+CC_OPT/HIGHER   = -Os
+CC_OPT/HIGHEST  = -Os
+
+CC_OPT          = $(CC_OPT/$(OPTIMIZATION_LEVEL))
+
+# For all platforms, do not omit the frame pointer register usage. 
+#    We need this frame pointer to make it easy to walk the stacks.
+#    This should be the default on X86, but ia64 and amd64 may not have this
+#    as the default.
+CFLAGS_REQUIRED_amd64   += -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+LDFLAGS_COMMON_amd64    += -m64
+CFLAGS_REQUIRED_i586    += -m32 -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+LDFLAGS_COMMON_i586     += -m32
+CFLAGS_REQUIRED_ia64    += -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9
+LDFLAGS_COMMON_sparcv9  += -m64 -mcpu=v9
+CFLAGS_REQUIRED_sparc   += -m32 -mcpu=v9
+LDFLAGS_COMMON_sparc    += -m32 -mcpu=v9
+CFLAGS_REQUIRED_arm     += -fsigned-char -D_LITTLE_ENDIAN
+CFLAGS_REQUIRED_ppc     += -fsigned-char -D_BIG_ENDIAN
+ifeq ($(ZERO_BUILD), true)
+  CFLAGS_REQUIRED       =  $(ZERO_ARCHFLAG)
+  ifeq ($(ZERO_ENDIANNESS), little)
+    CFLAGS_REQUIRED     += -D_LITTLE_ENDIAN
+  endif
+  LDFLAGS_COMMON        += $(ZERO_ARCHFLAG)
+else ifeq ($(ARCH), universal)
+  CFLAGS_REQUIRED       += -arch i386 -arch x86_64 -D_LITTLE_ENDIAN
+  LDFLAGS_COMMON        += -arch i386 -arch x86_64
+else
+  CFLAGS_REQUIRED       =  $(CFLAGS_REQUIRED_$(ARCH))
+  LDFLAGS_COMMON        += $(LDFLAGS_COMMON_$(ARCH))
+endif
+# 16-byte stack re-alignment on 32-bit Darwin
+CFLAGS_REQUIRED_i586 += -mstackrealign
+
+OTHER_CFLAGS = \
+         -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
+	     -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks
+
+#
+# Selection of warning messages
+#
+GCC_INHIBIT	= -Wno-unused -Wno-parentheses
+GCC_STYLE	= 
+GCC_WARNINGS	= -W -Wall $(GCC_STYLE) $(GCC_INHIBIT)
+
+#
+# Treat compiler warnings as errors, if warnings not allowed
+#
+ifeq ($(COMPILER_WARNINGS_FATAL),true)
+  GCC_WARNINGS += -Werror
+endif
+
+#
+# Misc compiler options
+#
+ifneq ($(ARCH),ppc)
+  CFLAGS_COMMON   = -fno-strict-aliasing
+endif 
+PIC_CODE_LARGE = -fPIC
+PIC_CODE_SMALL = -fpic
+GLOBAL_KPIC = $(PIC_CODE_LARGE)
+CFLAGS_COMMON   += $(GLOBAL_KPIC) $(GCC_WARNINGS)
+ifeq ($(ARCH), amd64)
+ CFLAGS_COMMON += -pipe
+endif
+
+# BSD 64bit machines use Dwarf2, which can be HUGE, have fastdebug use -g1
+DEBUG_FLAG = -g
+ifeq ($(FASTDEBUG), true)
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    DEBUG_FLAG = -g1
+  endif
+endif
+
+# DEBUG_BINARIES overrides everything, use full -g debug information
+ifeq ($(DEBUG_BINARIES), true)
+  DEBUG_FLAG = -g
+  CFLAGS_REQUIRED += $(DEBUG_FLAG)
+endif
+
+CFLAGS_OPT      = $(CC_OPT)
+CFLAGS_DBG      = $(DEBUG_FLAG)
+CFLAGS_COMMON += $(CFLAGS_REQUIRED)
+
+CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS)
+CXXFLAGS_OPT	= $(CC_OPT)
+CXXFLAGS_DBG	= $(DEBUG_FLAG)
+CXXFLAGS_COMMON += $(CFLAGS_REQUIRED)
+
+# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java
+ifeq ($(FASTDEBUG), true)
+  CFLAGS_DBG    += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+  CXXFLAGS_DBG	+= $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+endif
+
+CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"'
+
+# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here)
+ifneq ($(ARCH),alpha)
+  CPP_ARCH_FLAGS += -D$(ARCH)
+else
+  CPP_ARCH_FLAGS += -D_$(ARCH)_
+endif
+CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -D_ALLBSD_SOURCE $(VERSION_DEFINES) \
+		  -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT
+
+CPPFLAGS_COMMON += -DMACOSX
+
+ifeq ($(ARCH_DATA_MODEL), 64)
+CPPFLAGS_COMMON += -D_LP64=1
+endif
+
+CPPFLAGS_OPT    = -DNDEBUG
+CPPFLAGS_DBG    = -DDEBUG
+ifneq ($(PRODUCT), java)
+  CPPFLAGS_DBG    += -DLOGGING 
+endif
+
+# Libraries need to locate other libraries at runtime, and you can tell
+#   a library where to look by way of the dynamic runpaths (RPATH or RUNPATH)
+#   buried inside the .{so,dylib}. The {$ORIGIN,@loader_path/} says to look
+#   relative to where the library itself is and it can be followed
+#   with relative paths from that. By default we always look in
+#   {$ORIGIN,@loader_path/}, optionally we add relative paths if the Makefile
+#   sets LD_RUNPATH_EXTRAS to those relative paths.
+#   Except on MacOS X we add a flag -z origin, not sure if this is necessary,
+#   but doesn't seem to hurt.
+#   The environment variable LD_LIBRARY_PATH will over-ride these runpaths.
+#   See 'man {dyld,rtld}' for more information.
+#   Try: 'readelf -d lib*.so' to see these settings in a library.
+#
+LDFLAGS_COMMON += -Xlinker -rpath -Xlinker @loader_path/.
+LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=-Xlinker -rpath -Xlinker @loader_path/%)
+LDFLAGS_COMMON += -Xlinker -install_name -Xlinker @rpath/$(@F)
+
+#
+# -L paths for finding and -ljava
+#
+LDFLAGS_COMMON += -L$(LIBDIR)
+
+#
+# -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always
+# statically link libgcc but will print a warning with the flag. We don't 
+# want the warning, so check gcc version first.
+#
+ifeq ($(CC_MAJORVER),3)
+  OTHER_LDFLAGS  += -static-libgcc
+endif
+
+# Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
+#   (See Rules.gmk) The gcc 5 compiler might have an option for this?
+AUTOMATIC_PCH_OPTION = 
+
+#
+# Post Processing of libraries/executables
+#
+ifeq ($(VARIANT), OPT)
+  ifneq ($(NO_STRIP), true)
+    ifneq ($(DEBUG_BINARIES), true)
+      # Debug 'strip -S' leaves local function Elf symbols (better stack
+      # traces)
+      POST_STRIP_PROCESS = $(STRIP) -S
+    endif
+  endif
+endif
+
+#
+# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o
+#
+LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker
+
+#
+# Support for Quantify.
+#
+ifdef QUANTIFY
+QUANTIFY_CMD = quantify
+QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes
+LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS)
+endif
+
+# Darwin does not support linker map files.
+LDNOMAP=true
+
+#
+# Path and option to link against the VM, if you have to.  Note that
+# there are libraries that link against only -ljava, but they do get
+# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas
+# the library itself should not.
+#
+VM_NAME         = server
+JVMLIB          = -L$(LIBDIR)/server -L$(LIBDIR)/client -ljvm
+JAVALIB         = -ljava $(JVMLIB)
+
+#
+# We want to privatize JVM symbols on Solaris. This is so the user can
+# write a function called FindClass and this should not override the 
+# FindClass that is inside the JVM. At this point in time we are not
+# concerned with other JNI libraries because we hope that there will
+# not be as many clashes there.
+#
+PRIVATIZE_JVM_SYMBOLS = false
+
+USE_PTHREADS = true
+override ALT_CODESET_KEY         = _NL_CTYPE_CODESET_NAME
+override AWT_RUNPATH             =
+override HAVE_ALTZONE            = false
+override HAVE_FILIOH             = false
+override HAVE_GETHRTIME          = false
+override HAVE_GETHRVTIME         = false
+override HAVE_SIGIGNORE          = true
+override LEX_LIBRARY             = -lfl
+ifeq ($(STATIC_CXX),true)
+override LIBCXX                  = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic
+else
+override LIBCXX                  = -lstdc++
+endif
+override LIBPOSIX4               =
+override LIBSOCKET               =
+override LIBNSL                  =
+override LIBTHREAD               =
+override LIBDL                   =
+override MOOT_PRIORITIES         = true
+override NO_INTERRUPTIBLE_IO     = true
+override OPENWIN_HOME            = $(X11_PATH)
+override OPENWIN_LIB             = $(OPENWIN_HOME)/lib
+override OTHER_M4FLAGS           = -D__GLIBC__ -DGNU_ASSEMBLER
+override SUN_CMM_SUBDIR          =
+override THREADS_FLAG            = native
+override USE_GNU_M4              = true
+override USING_GNU_TAR           = true
+override WRITE_LIBVERSION        = false
+
+ifdef ALT_X11_PATH
+  X11_PATH = $(ALT_X11_PATH)
+else
+  X11_PATH = /usr/X11R6
+endif
+
+ifdef ALT_PACKAGE_PATH
+  PACKAGE_PATH = $(ALT_PACKAGE_PATH)
+else
+  PACKAGE_PATH = /opt/local
+endif
+
+# ALSA
+ifdef ALT_ALSA_LIB_PATH
+  ALSA_LIB_PATH = $(ALT_ALSA_LIB_PATH)
+else
+  ALSA_LIB_PATH = $(PACKAGE_PATH)/lib
+endif
+
+ifdef ALT_ALSA_HEADERS_PATH
+  ALSA_HEADERS_PATH = $(ALT_ALSA_HEADERS_PATH)
+else
+  ALSA_HEADERS_PATH = $(PACKAGE_PATH)/include
+endif
+
+# USE_EXECNAME forces the launcher to look up argv[0] on $PATH, and put the
+# resulting resolved absolute name of the executable in the environment
+# variable EXECNAME.  That executable name is then used that to locate the
+# installation area.
+override USE_EXECNAME            = true
+
+# If your platform has DPS, it will have Type1 fonts too, in which case
+# it is best to enable DPS support until such time as 2D's rasteriser
+# can fully handle Type1 fonts in all cases. Default is "yes".
+# HAVE_DPS should only be "no" if the platform has no DPS headers or libs
+# DPS (Displayable PostScript) is available on Solaris machines
+HAVE_DPS = no
+
+SYSTEM_ZLIB = true
+
+#
+# Japanese manpages
+#
+JA_SOURCE_ENCODING = eucJP
+JA_TARGET_ENCODINGS = UTF-8
+
+# Settings for the JDI - Serviceability Agent binding.
+
+HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
+SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
+
+# The JDI - Serviceability Agent binding is not currently supported
+# on ia64.
+ifeq ($(ARCH), ia64)
+  INCLUDE_SA = false
+else
+  INCLUDE_SA = true
+endif
+
+ifdef CROSS_COMPILE_ARCH
+  # X11 headers are not under /usr/include
+  OTHER_CFLAGS += -I$(OPENWIN_HOME)/include
+  OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include
+  OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include
+endif
+
+LIB_LOCATION ?= $(LIBDIR)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs-solaris.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,757 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile to specify compiler flags for programs and libraries
+# targeted to Solaris.  Should not contain any rules.
+#
+# WARNING: This file is shared with other workspaces. 
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+# Warning: the following variables are overridden by Defs.gmk. Set
+# values will be silently ignored:
+#   CFLAGS        (set $(OTHER_CFLAGS) instead)
+#   CPPFLAGS      (set $(OTHER_CPPFLAGS) instead)
+#   CXXFLAGS      (set $(OTHER_CXXFLAGS) instead)
+#   LDFLAGS       (set $(OTHER_LDFAGS) instead)
+#   LDLIBS        (set $(EXTRA_LIBS) instead)
+#   LDLIBS_COMMON (set $(EXTRA_LIBS) instead)
+#   LINTFLAGS     (set $(OTHER_LINTFLAGS) instead)
+#
+# Note: CPPFLAGS are used in C and C++ compiles.
+#
+
+# Get shared JDK settings
+include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
+
+ifndef PLATFORM_SRC
+PLATFORM_SRC = $(BUILDDIR)/../src/solaris
+endif # PLATFORM_SRC
+
+# Platform specific closed sources
+ifndef OPENJDK
+  ifndef CLOSED_PLATFORM_SRC
+    CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
+  endif
+endif
+
+# platform specific include files
+PLATFORM_INCLUDE_NAME = $(PLATFORM)
+PLATFORM_INCLUDE      = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
+
+# suffix used for make dependencies files
+DEPEND_SUFFIX = d
+# suffix used for lint files
+LINT_SUFFIX = ln
+# The suffix applied to the library name for FDLIBM
+FDDLIBM_SUFFIX = a
+# The suffix applied to scripts (.bat for windows, nothing for unix)
+SCRIPT_SUFFIX =
+# CC compiler object code output directive flag value
+CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
+
+ifdef ENABLE_FULL_DEBUG_SYMBOLS
+# Only check for Full Debug Symbols support on Solaris if it is
+# specifically enabled. Hopefully, it can be enabled by default
+# once the .debuginfo size issues are worked out.
+
+# Default OBJCOPY comes from the SUNWbinutils package:
+DEF_OBJCOPY=/usr/sfw/bin/gobjcopy
+ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64)
+  # On Solaris AMD64/X64, gobjcopy is not happy and fails:
+  #
+  # usr/sfw/bin/gobjcopy --add-gnu-debuglink=<lib>.debuginfo <lib>.so
+  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+  # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
+  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+  # /usr/sfw/bin/gobjcopy: libsaproc.debuginfo: Bad value
+  # BFD: stKPaiop: Not enough room for program headers, try linking with -N
+  # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: $(DEF_OBJCOPY) is not working on Solaris AMD64/X64")
+  OBJCOPY=
+else
+  OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
+  ifneq ($(ALT_OBJCOPY),)
+    _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
+    # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
+    OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
+  endif
+endif
+
+ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
+# The setting of OBJCOPY above enables the JDK build to import
+# .debuginfo files from the HotSpot build. However, adding FDS
+# support to the JDK build will occur in phases so a different
+# make variable is used to indicate that a particular library
+# supports FDS.
+
+ifeq ($(OBJCOPY),)
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
+else
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
+
+  # Library stripping policies for .debuginfo configs:
+  #   all_strip - strips everything from the library
+  #   min_strip - strips most stuff from the library; leaves minimum symbols
+  #   no_strip  - does not strip the library at all
+  #
+  # Oracle security policy requires "all_strip". A waiver was granted on
+  # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
+  #
+  DEF_STRIP_POLICY="min_strip"
+  ifeq ($(ALT_STRIP_POLICY),)
+    STRIP_POLICY=$(DEF_STRIP_POLICY)
+  else
+    STRIP_POLICY=$(ALT_STRIP_POLICY)
+  endif
+  _JUNK_ := $(shell \
+    echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
+endif
+endif
+endif
+
+#
+# Java default optimization (-x04/-O2) etc.  Applies to the VM.
+#
+ifndef OPTIMIZATION_LEVEL
+  ifeq ($(PRODUCT), java)
+    OPTIMIZATION_LEVEL = HIGHER
+  else
+    OPTIMIZATION_LEVEL = LOWER
+  endif
+endif
+ifndef FASTDEBUG_OPTIMIZATION_LEVEL
+  FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
+endif
+
+#
+# If -Xa is in CFLAGS_COMMON it will end up ahead of $(CC_OPT) for the
+# optimized build, and that ordering of the flags completely freaks
+# out cc.  Hence, -Xa is instead in each CFLAGS variant.
+#
+# The more unusual options to the Sun C compiler:
+#	-v		Stricter type checking, more error checking
+#			(To turn ALL warnings into fatals, use -errwarn=%all)
+#	-xstrconst	Place string literals and constants in read-only area
+#			(means you can't write on your string literals)
+#	-xs		Force debug information (stabs) into the .so or a.out
+#			(makes the library/executable debuggable without the
+#			.o files needing to be around, but at a space cost)
+#	-g & -O		If you add the -g option to the optimized compiles
+#			you will get better stack retraces, the code is
+#			still optimized. This includes a space cost too.
+#       -xc99=%none     Do NOT allow for c99 extensions to be used.
+#                       e.g. declarations must precede statements
+#       -xCC            Allow the C++ style of comments in C: //
+#                       Required with many of the source files.
+#       -mt             Assume multi-threaded (important)
+#
+# The more unusual options to the Sun C compiler:
+#       +w              Print more warnings
+#       +w2             Maximum warnings
+#
+
+#
+# Debug flag for C and C++ compiler
+#
+CFLAGS_DEBUG_OPTION    = -g $(CC_OPT/NONE)
+CXXFLAGS_DEBUG_OPTION  = -g $(CXX_OPT/NONE)
+
+# Turn off -g if we are doing tcov build
+ifdef TCOV_BUILD
+  CFLAGS_DEBUG_OPTION=
+  CXXFLAGS_DEBUG_OPTION=
+endif
+
+# FASTDEBUG: Optimize the -g builds, gives us a faster debug java
+#        If true adds -O to the debug compiles. This allows for any assert
+#        tests to remain and debug checking. The resulting code is faster
+#        but less debuggable.  Stack traces are still valid, although only
+#        approximate line numbers are given. Printing of local variables
+#        during a debugging session is not possible, but stepping and
+#        printing of global or static variables should be possible.
+#        Performance/size of files should be about the same, maybe smaller.
+#
+ifeq ($(FASTDEBUG), true)
+  CFLAGS_DEBUG_OPTION    = -g  $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+  CXXFLAGS_DEBUG_OPTION  = -g0 $(CXX_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
+endif
+
+CFLAGS_COMMON   = -L$(OBJDIR)
+
+# Do not allow C99 language features like declarations in code etc.
+CFLAGS_COMMON  += -xc99=%none
+
+# Allow C++ comments in C code
+CFLAGS_COMMON  += -xCC
+
+# Show error message tags on errors
+CFLAGS_COMMON   += -errshort=tags
+CXXFLAGS_COMMON += -errtags=yes
+
+# Optimization flags
+CFLAGS_OPT      = $(CC_OPT)
+
+# Debug version flags
+CFLAGS_DBG      = $(CFLAGS_DEBUG_OPTION)
+
+# Required C compiler flags
+CFLAGS_COMMON  += -Xa $(CFLAGS_REQUIRED)
+
+# Maximum warnings all the time
+CXXFLAGS_COMMON += +w
+CFLAGS_COMMON   += -v
+
+# Assume MT behavior all the time (important)
+CXXFLAGS_COMMON += -mt
+CFLAGS_COMMON   += -mt
+
+# Assume no C++ exceptions are used
+CXXFLAGS_COMMON += -features=no%except -DCC_NOEX
+
+# For C++, these options tell it to assume nothing about locating libraries
+#    either at compile time, or at runtime. Use of these options will likely
+#    require the use of -L and -R options to indicate where libraries will
+#    be found at compile time (-L) and at runtime (-R).
+#    The /usr/lib location comes for free, so no need to specify that one.
+#    Note: C is much simplier and there is no need for these options. This
+#          is mostly needed to avoid dependencies on libraries in the
+#          Compiler install area, also see LIBCXX and LIBM.
+CXXFLAGS_COMMON += -norunpath -xnolib
+
+#
+# Treat compiler warnings as errors, if requested
+#
+ifeq ($(COMPILER_WARNINGS_FATAL),true)
+  CFLAGS_COMMON += -errwarn=%all
+  CXXFLAGS_COMMON += -errwarn=%all
+endif
+
+CXXFLAGS_OPT	= $(CXX_OPT)
+CXXFLAGS_DBG	= $(CXXFLAGS_DEBUG_OPTION)
+CXXFLAGS_COMMON += $(CFLAGS_REQUIRED)
+
+# Add -xstrconst to the library compiles. This forces all string
+#  literals into the read-only data section, which prevents them from
+#  being written to and increases the runtime pages shared on the system.
+#
+ifdef LIBRARY
+  CFLAGS_COMMON +=-xstrconst
+endif
+
+# Source browser database
+#
+# COMPILE_WITH_SB    
+#        If defined adds -xsb to compiles and creates a
+#        source browsing database during compilation.
+#
+ifdef COMPILE_WITH_SB
+  ifeq ($(LIBRARY), java)
+    CFLAGS_DBG +=   -xsb
+  endif
+endif
+
+# Lint Flags:
+#	-Xa			ANSI C plus K&R, favor ANSI rules
+#	-fd			report on old style func defs
+#	-errchk=structarg	report on 64bit struct args by value
+#	-errchk=longptr64	report on 64bit to 32bit issues (ignores casts)
+#	-errchk=parentheses	report on suggested use of extra parens
+#	-v 			suppress unused args
+#	-x			suppress unused externs
+#	-u			suppress extern func/vars used/defined
+#	-errfmt=simple		use one line errors with position info
+#       $(LINT_XARCH_OPTION)    See Compiler-sun.gwk
+
+LINTFLAGS_COMMON  = -Xa
+LINTFLAGS_COMMON += -fd 
+LINTFLAGS_COMMON += -errchk=structarg,longptr64,parentheses
+LINTFLAGS_COMMON += -v
+LINTFLAGS_COMMON += -x 
+LINTFLAGS_COMMON += -u
+LINTFLAGS_COMMON += -errfmt=simple 
+LINTFLAGS_OPT   = 
+LINTFLAGS_DBG   =
+
+# The -W0,-noglobal tells the compiler to NOT generate mangled global
+#    ELF data symbols for file local static data.
+#    This can break fix&continue, but we'd rather do the same compilations
+#    for deliverable bits as we do for non-deliverable bits
+#    Tell the compilers to never generate globalized names, all the time.
+CFLAGS_COMMON += -W0,-noglobal
+
+# If we have a specific arch value to use, add it
+CFLAGS_COMMON    += $(XARCH_OPTION)
+CXXFLAGS_COMMON  += $(XARCH_OPTION)
+ASFLAGS_COMMON   += $(AS_XARCH_OPTION)
+EXTRA_LIBS       += $(XARCH_OPTION)
+LINTFLAGS_COMMON += $(LINT_XARCH_OPTION)
+
+#
+# uncomment the following to build with PERTURBALOT set
+#
+# OTHER_CFLAGS += -DPERTURBALOT
+#
+
+CPPFLAGS_COMMON = -D__solaris__  -D$(ARCH_FAMILY)
+CPPFLAGS_OPT    = -DNDEBUG
+CPPFLAGS_DBG    = -DDEBUG
+
+ifneq ($(PRODUCT), java)
+  CPPFLAGS_DBG    += -DLOGGING -DDBINFO
+endif
+
+ifeq ($(ARCH_FAMILY), i586)
+  # The macro _LITTLE_ENDIAN needs to be defined the same to avoid the
+  #   Sun C compiler warning message: warning: macro redefined: _LITTLE_ENDIAN
+  #   (The Solaris X86 system defines this in file /usr/include/sys/isa_defs.h).
+  #   Note: -Dmacro         is the same as    #define macro 1
+  #         -Dmacro=	    is the same as    #define macro
+  #
+  CPPFLAGS_COMMON +=  -DcpuIntel -D_LITTLE_ENDIAN= -D$(LIBARCH)
+  # Turn off a superfluous compiler error message on Intel
+  CFLAGS_COMMON += -erroff=E_BAD_PRAGMA_PACK_VALUE
+endif
+
+# Java memory management is based on memory mapping by default, but a
+# system only assuming malloc/free can be built by adding -DUSE_MALLOC 
+
+CPPFLAGS_COMMON	+= -DTRACING -DMACRO_MEMSYS_OPS -DBREAKPTS
+CPPFLAGS_OPT	+= -DTRIMMED
+
+LDFLAGS_DEFS_OPTION  = -z defs
+LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
+
+#
+# -L paths for finding and -ljava
+#
+LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH)
+LDFLAGS_OPT     =
+LDFLAGS_DBG     =
+
+#
+# We never really want the incremental linker, ever
+#    The -xildoff option tells Sun's compilers to NOT use incremental linker
+#
+LDFLAGS_COMMON  += -xildoff
+
+ifdef LIBRARY
+  # Libraries need to locate other libraries at runtime, and you can tell
+  #   a library where to look by way of the dynamic runpaths (RPATH or RUNPATH)
+  #   buried inside the .so. The $ORIGIN says to look relative to where
+  #   the library itself is and it can be followed with relative paths from
+  #   that. By default we always look in $ORIGIN, optionally we add relative
+  #   paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths.
+  #   The environment variable LD_LIBRARY_PATH will over-ride these runpaths.
+  #   Try: 'dump -Lv lib*.so' to see these settings in a library.
+  #
+  LDFLAGS_COMMON += -R\$$ORIGIN
+  LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=-R\$$ORIGIN/%)
+endif
+
+EXTRA_LIBS += -lc
+
+# Postprocessing is done on the images directories only
+#
+ifeq ($(VARIANT), OPT)
+  ifeq ($(PARTIAL_GPROF), true)
+    NO_STRIP = true
+  endif
+  ifeq ($(GPROF), true)
+    NO_STRIP = true
+  endif
+  ifneq ($(NO_STRIP), true)
+    # Debug 'strip -x' leaves local function Elf symbols (better stack traces)
+    POST_STRIP_PROCESS = $(STRIP) -x
+  endif
+endif
+POST_MCS_PROCESS=$(MCS) -d -a "JDK $(FULL_VERSION)"
+
+#
+# Sun C compiler will take -M and pass it on to ld.
+# Usage: ld $(LD_MAPFILE_FLAG) mapfile *.o
+#
+ifeq ($(CC_VERSION),gcc)
+LD_MAPFILE_FLAG = -Xlinker -M -Xlinker
+else
+LD_MAPFILE_FLAG = -M
+endif
+
+#
+# Variables globally settable from the make command line (default
+# values in brackets):
+#	GPROF (false)
+# Eg: 	% gnumake GPROF=true
+GPROF = false
+ifeq ($(GPROF), true)
+    CFLAGS_COMMON += -DGPROF -xpg
+    EXTRA_LIBS += -xpg
+endif
+
+# PARTIAL_GPROF is to be used ONLY during compilation - it should not
+# appear during linking of libraries or programs.  It also should
+# prevent linking with -z defs to allow a symbol to remain undefined.
+#
+PARTIAL_GPROF = false
+ifeq ($(PARTIAL_GPROF), true)
+  CFLAGS_GPROF += -xpg
+  LDFLAGS_DEFS_OPTION  = -z nodefs
+endif
+
+#
+# For a TCOV build we add in the TCOV_OPTION
+#
+ifdef TCOV_BUILD
+  TCOV_OPTION		= -xprofile=tcov
+  LDFLAGS_COMMON 	+= $(TCOV_OPTION) -Kpic
+  CFLAGS_COMMON  	+= $(TCOV_OPTION)
+  CXXFLAGS_COMMON 	+= $(TCOV_OPTION)
+  EXTRA_LIBS 	+= $(TCOV_OPTION)
+  LDNOMAP=true
+endif
+
+#
+# Solaris only uses native threads. 
+#
+THREADS_FLAG=	native
+THREADS_DIR=	threads
+
+#
+# Support for Quantify.
+#
+ifdef QUANTIFY
+  QUANTIFY_CMD = quantify
+  QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes
+  LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS)
+  ifdef LIBRARY
+    CFLAGS_COMMON += -K PIC
+  endif
+endif
+
+#
+# Support for Purify.
+#
+ifdef PURIFY
+  PURIFY_CMD = /net/suntools.eng/export/tools/sparc/bin/purify
+  PURIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes
+  LINK_PRE_CMD = $(PURIFY_CMD) $(PURIFY_OPTIONS)
+  ifdef LIBRARY
+    CFLAGS_COMMON += -K PIC
+  endif
+endif
+
+#
+# Different "levels" of optimization.
+#
+ifeq ($(CC_VERSION),gcc)
+  
+  CC_OPT/NONE     =
+  CC_OPT/LOWER    = -O2
+  CC_OPT/HIGHER   = -O3
+  CC_OPT/HIGHEST  = -O3
+
+  CXX_OPT/NONE    =
+  CXX_OPT/LOWER   = -O2
+  CXX_OPT/HIGHER  = -O3
+  CXX_OPT/HIGHEST = -O3
+
+  CFLAGS_REQUIRED_i586  += -fno-omit-frame-pointer
+  CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer
+  
+  # Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
+  #   (See Rules.gmk) May need to wait for gcc 5?
+  AUTOMATIC_PCH_OPTION = 
+
+else
+  
+  # Highest could be -xO5, but indications are that -xO5 should be reserved
+  #    for a per-file use, on sources with known performance impacts.
+  OPT_LEVEL/LOWER    = 2
+  OPT_LEVEL/HIGHER   = 4
+  OPT_LEVEL/HIGHEST  = 4
+  
+  CC_OPT/NONE     =
+  CC_OPT/LOWER    = $(OPT_LEVEL/LOWER:%=-xO%)
+  CC_OPT/HIGHER   = $(OPT_LEVEL/HIGHER:%=-xO%)
+  CC_OPT/HIGHEST  = $(OPT_LEVEL/HIGHEST:%=-xO%)
+  
+  CXX_OPT/NONE    =
+  CXX_OPT/LOWER   = $(OPT_LEVEL/LOWER:%=-xO%)
+  CXX_OPT/HIGHER  = $(OPT_LEVEL/HIGHER:%=-xO%)
+  CXX_OPT/HIGHEST = $(OPT_LEVEL/HIGHEST:%=-xO%)
+    
+  # We need stack frames at all times
+  USE_XKEEPFRAME_OPTION = false
+  ifeq ($(USE_XKEEPFRAME_OPTION),true)
+    
+    # Unknown spelling on this option at this time (Maybe in SS13?)
+    CC_XKEEPFRAME_OPTIONS  = -xkeepframe
+    CXX_XKEEPFRAME_OPTIONS = -xkeepframe
+  
+  else
+  
+    # On X86, make sure tail call optimization is off
+    #    The z and y are the tail call optimizations.
+    ifeq ($(ARCH_FAMILY), i586)
+      CC_NEWER_THAN_58 := \
+        $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \
+	    \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 8 \) )
+      ifeq ($(CC_NEWER_THAN_58),1)
+        #    Somehow, tail call optimization is creeping in.
+        #    Make sure it is off.
+        # WARNING: These may cause compiler warnings about duplicate -O options
+        CC_XKEEPFRAME_OPTIONS  += -Wu,-O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz
+        CXX_XKEEPFRAME_OPTIONS += -Qoption ube -O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz
+      endif
+    endif
+  
+    #  On i586 we need to tell the code generator to ALWAYS use a
+    #   frame pointer.
+    ifeq ($(ARCH_FAMILY), i586)
+      # Note that in 5.7, this is done with -xregs=no%frameptr
+      ifeq ($(CC_VER), 5.5)
+        # It's not exactly clear when this optimization kicks in, the
+        #   current assumption is -xO4 or greater and for C++ with
+        #   the -features=no%except option and -xO4 and greater.
+        #   Bottom line is, we ALWAYS want a frame pointer!
+        CC_XKEEPFRAME_OPTIONS  += -Wu,-Z~B
+        CXX_XKEEPFRAME_OPTIONS += -Qoption ube -Z~B
+      endif
+
+      CC_NEWER_THAN_56 := \
+        $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \
+	    \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 6 \) )
+      ifeq ($(CC_NEWER_THAN_56),1)
+        # Do NOT use frame pointer register as a general purpose opt register
+        CC_OPT/NONE            += -xregs=no%frameptr
+        CXX_OPT/NONE           += -xregs=no%frameptr
+        CC_XKEEPFRAME_OPTIONS  += -xregs=no%frameptr
+        CXX_XKEEPFRAME_OPTIONS += -xregs=no%frameptr
+      endif
+    endif
+  
+    #  Optimizer for sparc needs to be told not to do certain things
+    #   related to frames or save instructions.
+    ifeq ($(ARCH_FAMILY), sparc)
+      #  Do not use save instructions instead of add instructions
+      #  This was an optimization starting in SC5.0 that made it hard for us to
+      #    find the "save" instruction (which got turned into an "add")
+      CC_XKEEPFRAME_OPTIONS  += -Wc,-Qrm-s
+      CXX_XKEEPFRAME_OPTIONS += -Qoption cg -Qrm-s
+      # Don't allow tail call code optimization. Started in SC5.0.
+      #    We don't like code of this form:
+      #	save
+      #	<code>
+      #	call foo
+      #	   restore
+      #   because we can't tell if the method will have a stack frame
+      #   and register windows or not.
+      CC_XKEEPFRAME_OPTIONS  += -Wc,-Qiselect-T0
+      CXX_XKEEPFRAME_OPTIONS += -Qoption cg -Qiselect-T0
+    endif
+  
+  endif
+
+  # Extra options used with HIGHEST
+  #
+  # WARNING: Use of OPTIMIZATION_LEVEL=HIGHEST in your Makefile needs to be
+  #          done with care, there are some assumptions below that need to
+  #          be understood about the use of pointers, and IEEE behavior.
+  #
+  # Use non-standard floating point mode (not IEEE 754)
+  CC_HIGHEST_EXTRAS += -fns
+  # Do some simplification of floating point arithmetic (not IEEE 754)
+  CC_HIGHEST_EXTRAS += -fsimple
+  # Use single precision floating point with 'float'
+  CC_HIGHEST_EXTRAS += -fsingle
+  # Assume memory references via basic pointer types do not alias
+  #   (Source with excessing pointer casting and data access with mixed 
+  #    pointer types are not recommended)
+  CC_HIGHEST_EXTRAS += -xalias_level=basic
+  # Use intrinsic or inline versions for math/std functions
+  #   (If you expect perfect errno behavior, do not use this)
+  CC_HIGHEST_EXTRAS += -xbuiltin=%all
+  # Loop data dependency optimizations (need -xO3 or higher)
+  CC_HIGHEST_EXTRAS += -xdepend
+  # Pointer parameters to functions do not overlap
+  #   (Similar to -xalias_level=basic usage, but less obvious sometimes.
+  #    If you pass in multiple pointers to the same data, do not use this)
+  CC_HIGHEST_EXTRAS += -xrestrict
+  # Inline some library routines
+  #   (If you expect perfect errno behavior, do not use this)
+  CC_HIGHEST_EXTRAS += -xlibmil
+  # Use optimized math routines
+  #   (If you expect perfect errno behavior, do not use this)
+  #  Can cause undefined external on Solaris 8 X86 on __sincos, removing for now
+  #  CC_HIGHEST_EXTRAS += -xlibmopt
+  ifeq ($(ARCH_FAMILY), sparc)
+    # Assume at most 8byte alignment, raise SIGBUS on error
+    ### Presents an ABI issue with customer JNI libs?
+    ####CC_HIGHEST_EXTRAS  += -xmemalign=8s
+    # Automatic prefetch instructions, explicit prefetch macros
+    CC_HIGHEST_EXTRAS += -xprefetch=auto,explicit
+    # Pick ultra as the chip to optimize to
+    CC_HIGHEST_EXTRAS += -xchip=ultra
+  endif
+  ifeq ($(ARCH), i586)
+    # Pick pentium as the chip to optimize to
+    CC_HIGHEST_EXTRAS += -xchip=pentium
+  endif
+  ifdef LIBRARY
+    # The Solaris CBE (Common Build Environment) requires that the use
+    # of appl registers be disabled when compiling a public library (or
+    # a library that's loaded by a public library) on sparc.
+    CFLAGS_REQUIRED_sparc    += -xregs=no%appl
+    CFLAGS_REQUIRED_sparcv9  += -xregs=no%appl
+  endif
+  CC_NEWER_THAN_56 := \
+    $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \
+         \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 6 \) )
+  ifeq ($(CC_NEWER_THAN_56),1)
+    #     Presents an ABI issue with customer JNI libs? We must be able to
+    #     to handle 4byte aligned objects? (rare occurance, but possible?)
+    CFLAGS_REQUIRED_sparc += -xmemalign=4s
+  endif
+  # Just incase someone trys to use the SOS9 compilers
+  ifeq ($(CC_VER), 5.6)
+    # We MUST allow data alignment of 4 for sparc (sparcv9 is ok at 8s)
+    CFLAGS_REQUIRED_sparc += -xmemalign=4s
+  endif
+  # Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
+  #   (See Rules.gmk) The SS11 -xpch=auto* options appear to be broken.
+  AUTOMATIC_PCH_OPTION =
+  
+  # Add in keep frame options
+  CC_OPT/LOWER    += $(CC_XKEEPFRAME_OPTIONS)
+  CC_OPT/HIGHER   += $(CC_XKEEPFRAME_OPTIONS)
+  CC_OPT/HIGHEST  += $(CC_XKEEPFRAME_OPTIONS)
+  CXX_OPT/LOWER   += $(CXX_XKEEPFRAME_OPTIONS)
+  CXX_OPT/HIGHER  += $(CXX_XKEEPFRAME_OPTIONS)
+  CXX_OPT/HIGHEST += $(CXX_XKEEPFRAME_OPTIONS)
+ 
+  # Add in highest optimization settings
+  CC_OPT/HIGHEST  += $(CC_HIGHEST_EXTRAS)
+  CXX_OPT/HIGHEST += $(CC_HIGHEST_EXTRAS)
+  
+endif
+
+# Default optimization settings based on level.
+CC_OPT  = $(CC_OPT/$(OPTIMIZATION_LEVEL))
+CXX_OPT = $(CXX_OPT/$(OPTIMIZATION_LEVEL))
+
+# Flags required all the time
+CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH))
+
+#
+# Path and option to link against the VM, if you have to.  Note that
+# there are libraries that link against only -ljava, but they do get
+# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas
+# the library itself should not.
+#
+VM_NAME         = server
+JVMLIB          = -L$(LIBDIR)/$(LIBARCH)/server -L$(LIBDIR)/$(LIBARCH)/client -ljvm
+JAVALIB         = -ljava $(JVMLIB)
+
+# Part of INCREMENTAL_BUILD mechanism.
+#   Compiler emits things like:  path/file.o: file.h
+#   We want something like: relative_path/file.o relative_path/file.d: file.h
+#   In addition on Solaris, any include file starting with / is deleted,
+#   this gets rid of things like /usr/include files, which never change.
+CC_DEPEND	 = -xM1
+CC_DEPEND_FILTER = $(SED) -e '/:[ 	]*[/]/d' -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g' | $(SORT) -u
+
+# Location of openwin libraries (do we really need this anymore?)
+OPENWIN_HOME    = /usr/openwin
+OPENWIN_LIB     = $(OPENWIN_HOME)/lib$(ISA_DIR)
+
+# Runtime graphics library search paths...
+OPENWIN_RUNTIME_LIB = /usr/openwin/lib$(ISA_DIR)
+AWT_RUNPATH = -R/usr/dt/lib$(ISA_DIR) -R$(OPENWIN_RUNTIME_LIB)
+
+# C++ Runtime library (libCrun.so), use instead of -lCrun.
+#    Originally used instead of -lCrun to guarantee use of the system
+#    .so version and not the .a or .so that came with the compilers.
+#    With the newer compilers this could probably change back to -lCrun but
+#    in general this is ok to continue to do.
+LIBCXX = /usr/lib$(ISA_DIR)/libCrun.so.1
+
+# JDK now requires Solaris 10, so pick up libm.so.2
+LIBM = /usr/lib$(ISA_DIR)/libm.so.2
+
+# Socket library
+LIBSOCKET = -lsocket
+
+# Network Services library
+LIBNSL = -lnsl
+
+# service configuration facility library
+LIBSCF = -lscf
+
+# Dynamic Loading library
+LIBDL = -ldl
+
+# GLOBAL_KPIC: If set means all libraries are PIC, position independent code
+#    EXCEPT for select compiles
+#    If a .o file is compiled non-PIC then it should be forced
+#	   into the RW data segment with a mapfile option. This is done
+#    with object files which generated from .s files.
+#    The -ztext enforces that no relocations remain in the text segment
+#    so that it remains purely read-only for optimum system performance.
+#    Some libraries may use a smaller size (13bit -Kpic) on sparc instead of 
+#    (32 bit -KPIC) and will override GLOBAL_KPIC appropriately.
+#
+PIC_CODE_LARGE   = -KPIC
+PIC_CODE_SMALL   = -Kpic
+ifndef TCOV_BUILD
+    GLOBAL_KPIC      = $(PIC_CODE_LARGE)
+    CXXFLAGS_COMMON += $(GLOBAL_KPIC)
+    CFLAGS_COMMON   += $(GLOBAL_KPIC)
+    LDFLAGS_COMMON  += -ztext
+endif # TCOV_BUILD
+
+# If your platform has DPS, it will have Type1 fonts too, in which case
+# it is best to enable DPS support until such time as 2D's rasteriser
+# can fully handle Type1 fonts in all cases. Default is "yes".
+# HAVE_DPS should only be "no" if the platform has no DPS headers or libs
+# DPS (Displayable PostScript) is available on Solaris machines
+
+HAVE_DPS = yes
+
+#
+# Japanese manpages
+#
+JA_SOURCE_ENCODING = eucJP
+JA_TARGET_ENCODINGS = eucJP UTF-8 PCK
+
+# Settings for the JDI - Serviceability Agent binding.
+HOTSPOT_SALIB_PATH   = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
+SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
+SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
+INCLUDE_SA=true
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs-windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,418 @@
+#
+# Copyright (c) 1999, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile to specify compiler flags for programs and libraries
+# targeted to Windows builds.  Should not contain any rules.
+#
+# WARNING: This file is shared with other workspaces. 
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+# Get shared JDK settings
+include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
+
+# CC compiler object code output directive flag value
+CC_OBJECT_OUTPUT_FLAG = -Fo
+
+# The suffix applied to the library name for FDLIBM
+FDDLIBM_SUFFIX = lib
+# The suffix applied to scripts (.bat for windows, nothing for unix)
+SCRIPT_SUFFIX = .bat
+
+# LIB_LOCATION, which for windows identifies where .exe files go, may be
+# set by each GNUmakefile. The default is BINDIR.
+ifndef LIB_LOCATION
+  LIB_LOCATION = $(BINDIR)
+endif # LIB_LOCATION
+
+ifndef PLATFORM_SRC
+  PLATFORM_SRC  = $(BUILDDIR)/../src/windows
+endif # PLATFORM_SRC
+
+# Platform specific closed sources
+ifndef OPENJDK
+  ifndef CLOSED_PLATFORM_SRC
+    CLOSED_PLATFORM_SRC  = $(BUILDDIR)/../src/closed/windows
+  endif
+endif
+
+# for backwards compatability, the old "win32" is used here instead of 
+# the more proper "windows"
+PLATFORM_INCLUDE_NAME = win32
+PLATFORM_INCLUDE      = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
+
+# The following DLL's are considered MS runtime libraries and should
+#     not to be REBASEd, see deploy/make/common/Release.gmk.
+#     msvcr*.dll: Microsoft runtimes
+ifeq ($(COMPILER_VERSION), VS2010)
+  MSVCRNN_DLL = msvcr100.dll
+  MSVCPNN_DLL = msvcp100.dll
+endif
+
+EXTRA_LFLAGS += /LIBPATH:$(DXSDK_LIB_PATH)
+
+# C Compiler flag definitions
+
+#
+# Default optimization
+#
+
+ifndef OPTIMIZATION_LEVEL
+  ifeq ($(PRODUCT), java)
+    OPTIMIZATION_LEVEL = HIGHER
+  else
+    OPTIMIZATION_LEVEL = LOWER
+  endif
+endif
+ifndef FASTDEBUG_OPTIMIZATION_LEVEL
+  FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
+endif
+
+ifeq ($(CC_VERSION),msvc)
+  # Visual Studio compiler option definitions:
+  #   -O1      Favors reduced size over speed (-Og     -Os -Oy -Ob2 -Gs -GF -Gy)
+  #   -O2      Favors speed over reduced size (-Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy)
+  #   -Ob2     More aggressive inlining
+  #   -Og      Global optimizations
+  #   -Oi      Replace some functions with intrinsic or special forms
+  #   -fp:precise (should be the default)
+  #            Improve floating point calculations (disables some optimizations)
+  #   -Os      Favor small code
+  #   -Ot      Favor faster code
+  #   -Oy      Frame pointer omission
+  #   -G6      Used to be -GB?
+  #   -GF      Pool strings in read-only memory
+  #   -Gf      Pool strings in read-write memory (the default)
+  #   -Gs      Controls stack probess
+  #   -GS      Adds buffer overflow checks on stacks (the default)
+  #   -EHsc    Enables exception handling 
+  #   -Gy      Function level linking only
+  #
+
+  CC_OPT/NONE    = -Od
+  CC_OPT/LOWER   = -O2
+  CC_OPT/HIGHER  = -O3
+  CC_OPT/HIGHEST = -O3
+  
+  ifeq ($(COMPILER_VERSION), VS2010)
+    # Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
+    AUTOMATIC_PCH_OPTION =
+    GX_OPTION = -EHsc
+    GZ_OPTION = -RTC1
+    ifeq ($(ARCH_DATA_MODEL), 32)
+      CC_OPT/HIGHEST = -O2
+      CC_OPT/HIGHER  = -O1
+      CC_OPT/LOWER   = -O1
+    else
+      CC_OPT/HIGHEST = -O2
+      CC_OPT/HIGHER  = -O1
+      CC_OPT/LOWER   = -O1
+    endif
+  endif
+
+else # CC_VERSION
+  # GCC not supported, but left for historical reference...
+  CC_OPT/NONE     =
+  CC_OPT/LOWER    = -O2
+  CC_OPT/HIGHER   = -O2
+  CC_OPT/HIGHEST  = -O3
+
+endif
+
+CC_OPT = $(CC_OPT/$(OPTIMIZATION_LEVEL))
+
+# Select the runtime support library carefully, need to be consistent
+#
+# Visual Studio Runtime compiler option definitions:
+#   -MD        Use dynamic multi-threaded runtime library
+#   -MDd       Use debug version (don't use, doesn't mix with -MD DLL's)
+#   -MT        Use static multi-threaded runtime library (-ML is going away)
+#   -MTd       Use static debug version (better than -MDd, no runtime issues)
+#   -D_DEBUG   Change use of malloc/free/etc to use special debug ones (-MTd)
+#
+#      NOTE: We also will use /D _STATIC_CPPLIB  so we don't need msvcpnn.dll
+#
+# If MS_RUNTIME_STATIC is requested we may have a problem, it is no longer
+#     supported by VS2010
+ifneq ($(MS_RUNTIME_STATIC),true)
+  MS_RUNTIME_OPTION=-MD
+endif
+# The _DEBUG macro option (changes things like malloc to use debug version)
+MS_RUNTIME_DEBUG_OPTION=
+MS_RC_DEBUG_OPTION=
+# Externally set environment variable can force any build to use the debug vers
+ifeq ($(MFC_DEBUG), true)
+  ifeq ($(MS_RUNTIME_STATIC),true)
+    MS_RUNTIME_OPTION=-MTd
+  else
+    # This MS debugging flag forces a dependence on the debug
+    #     version of the runtime library (MSVCR*D.DLL), as does -MDd.
+    #     We cannot re-distribute this debug runtime.
+    MS_RUNTIME_OPTION=-MDd
+  endif
+  MS_RUNTIME_DEBUG_OPTION= -D_DEBUG
+  MS_RC_DEBUG_OPTION= -d _DEBUG
+endif
+
+# Always add _STATIC_CPPLIB definition
+STATIC_CPPLIB_OPTION = /D _STATIC_CPPLIB
+
+# Silence the warning about using _STATIC_CPPLIB
+ifneq ($(SHOW_ALL_WARNINGS),true)
+  # Needed with VS2010 to turn off the deprecated warning.
+  STATIC_CPPLIB_OPTION += /D _DISABLE_DEPRECATE_STATIC_CPPLIB
+endif
+
+MS_RUNTIME_OPTION += $(STATIC_CPPLIB_OPTION)
+
+ifeq ($(CC_VERSION),msvc)
+  # Visual Studio compiler option definitions:
+  #   -Zi      Cause *.pdb file to be created, full debug information
+  #   -Z7      Full debug inside the .obj, no .pdb
+  #   -Zd      Basic debug, no local variables? In the .obj
+  #   -Zl      Don't add runtime library name to obj file?
+  #   -Od      Turns off optimization and speeds compilation
+  #   -YX -Fp/.../foobar.pch   Use precompiled headers (try someday?)
+  #   -nologo  Don't print out startup message
+  #   /D _STATIC_CPPLIB
+  #            Use static link for the C++ runtime (so msvcpnn.dll not needed)
+  #   
+  CFLAGS_COMMON  += -Zi -nologo
+  CFLAGS_OPT      = $(CC_OPT)
+  CFLAGS_DBG      = -Od $(MS_RUNTIME_DEBUG_OPTION)
+
+  CFLAGS_VS2010 += -Zc:wchar_t-
+
+  # All builds get the same runtime setting
+  CFLAGS_COMMON += $(MS_RUNTIME_OPTION) $(CFLAGS_$(COMPILER_VERSION))
+
+  LDEBUG = /debug
+  
+  ifeq ($(VTUNE_SUPPORT), true)
+    OTHER_CFLAGS = -Z7 -Ox 
+    LDEBUG += /pdb:NONE
+  endif
+  
+  # VS2010, always need safe exception handlers, not needed on 64bit
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    LFLAGS_VS2010 +=  -SAFESEH
+  endif
+
+  # LFLAGS are the flags given to $(LINK) and used to build the actual DLL file
+  BASELFLAGS = -nologo /opt:REF /incremental:no
+
+  LFLAGS = $(BASELFLAGS) $(LDEBUG) $(EXTRA_LFLAGS) $(LFLAGS_$(COMPILER_VERSION))
+  LDDFLAGS += $(LFLAGS_$(COMPILER_VERSION))
+  
+endif
+
+#
+# Preprocessor macro definitions
+#
+CPPFLAGS_COMMON = -DWIN32 -DIAL -D_LITTLE_ENDIAN
+ifeq ($(ARCH), amd64)
+  CPPFLAGS_COMMON += -D_AMD64_ -Damd64
+else
+  CPPFLAGS_COMMON += -D_X86_ -Dx86 
+endif
+CPPFLAGS_COMMON += -DWIN32_LEAN_AND_MEAN
+
+#
+# Output options (use specific filenames to avoid parallel compile errors)
+#
+CFLAGS_COMMON += -Fd$(OBJDIR)/$(basename $(@F)).pdb -Fm$(OBJDIR)/$(basename $(@F)).map
+
+#
+# Use -wdNNNN to disable warning NNNN.
+#   C4800 is a warning about bool performance casts (can't make go away)
+#
+COMPILER_WARNINGS_TO_IGNORE = 4800
+CFLAGS_COMMON += $(COMPILER_WARNINGS_TO_IGNORE:%=-wd%)
+
+#
+# Treat compiler warnings as errors, if requested
+#
+CFLAGS_COMMON += -W$(COMPILER_WARNING_LEVEL)
+ifeq ($(COMPILER_WARNINGS_FATAL),true)
+  CFLAGS_COMMON += -WX
+endif
+
+# Turn off some warnings by default, enable them all if asked.
+ifneq ($(SHOW_ALL_WARNINGS),true)
+  # The -D _CRT_SECURE_NO_DEPRECATE turns off security/deprecated warnings on
+  #    the standard C library functions like strcpy.
+  CFLAGS_COMMON += -D _CRT_SECURE_NO_DEPRECATE
+  # The -D _CRT_NONSTDC_NO_DEPRECATE turns off deprecation warnings about using
+  #    non-standard C POSIX functions.
+  CFLAGS_COMMON += -D _CRT_NONSTDC_NO_DEPRECATE
+endif
+
+CPPFLAGS_OPT    = -DNDEBUG
+CPPFLAGS_DBG    = -DDEBUG -DLOGGING
+
+CXXFLAGS_COMMON = $(CFLAGS_COMMON)
+CXXFLAGS_OPT    = $(CFLAGS_OPT)
+CXXFLAGS_DBG    = $(CFLAGS_DBG)
+
+ifneq ($(LIBRARY),fdlibm)
+  EXTRA_LIBS += advapi32.lib
+endif
+
+#
+# Path and option to link against the VM, if you have to. 
+#
+JVMLIB = $(LIBDIR)/jvm.lib
+JAVALIB = $(LIBDIR)/java.lib
+
+ifeq ($(CC_VERSION), msvc)
+  CC_DEPEND        = -FD
+  CC_DEPEND_FILTER = 
+else # CC_VERSION
+# not supported, but left for historical reference...
+  CC_DEPEND        = -MM
+  CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)&!g'
+endif # CC_VERSION
+
+LIBRARY_SUFFIX = dll
+LIB_SUFFIX     = lib
+
+# Settings for the JDI - Serviceability Agent binding.
+HOTSPOT_SALIB_PATH   = $(HOTSPOT_IMPORT_PATH)/jre/bin
+SALIB_NAME = $(LIB_PREFIX)sawindbg.$(LIBRARY_SUFFIX)
+SAMAP_NAME = $(LIB_PREFIX)sawindbg.map
+SAPDB_NAME = $(LIB_PREFIX)sawindbg.pdb
+
+ifeq ($(ARCH), ia64)
+  # SA will never be supported here.
+  INCLUDE_SA = false
+else
+  INCLUDE_SA = true
+endif
+
+# Settings for the VERSIONINFO tap on windows. 
+VERSIONINFO_RESOURCE = $(BUILDDIR)/../src/windows/resource/version.rc
+
+ifneq ($(JDK_BUILD_NUMBER),)
+ COOKED_BUILD_NUMBER = $(shell $(ECHO) $(JDK_BUILD_NUMBER) | $(SED) -e 's/^b//' -e 's/^0//')
+else
+ COOKED_BUILD_NUMBER = 0
+endif
+
+# If the update version contains non-numeric characters, we need
+# to massage it into a numeric format. 
+# We use the following formula:
+# JDK_UPDATE_VER = JDK_UPDATE_VERSION * 10 + EXCEPTION_VERSION
+#
+# Here are some examples:
+#     1.5.0    b01  ->  5,0,0,1
+#     1.5.0_10 b01  ->  5,0,100,1
+#     1.4.2 b01     ->  4,2,0,1
+#     1.4.2_02 b01  ->  4,2,20,1
+#     1.4.2_02a b01 ->  4,2,21,1
+#     1.4.2_02b b01 ->  4,2,22,1
+ifdef JDK_UPDATE_VERSION
+  VTMP := $(shell $(ECHO) $(JDK_UPDATE_VERSION) | $(TR) "abcde" "12345")
+  CAB_CHAR1 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 1, 1);}')
+  CAB_CHAR2 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 2, 1);}')
+  CAB_CHAR3 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 3, 1);}')
+  JDK_UPDATE_META_TAG := U$(MARKETING_NUMBER)
+  ifeq ($(CAB_CHAR3),)
+    CAB_CHAR3 := 0
+  endif
+  ifeq ($(CAB_CHAR1), 0)
+    JDK_UPDATE_VER := $(CAB_CHAR2)$(CAB_CHAR3)
+  else
+    JDK_UPDATE_VER := $(CAB_CHAR1)$(CAB_CHAR2)$(CAB_CHAR3)
+  endif
+else
+  JDK_UPDATE_VER := 0
+endif
+
+#RC_FLAGS = /l 0x409 /r
+
+#ifeq ($(VARIANT), OPT)
+#  RC_FLAGS += -d NDEBUG 
+#else
+#  RC_FLAGS += $(MS_RC_DEBUG_OPTION)
+#endif 
+
+# Values for the RC variables defined in RC_FLAGS
+#JDK_RC_BUILD_ID = $(FULL_VERSION)
+#JDK_RC_COMPANY = $(COMPANY_NAME)
+#JDK_RC_COMPONENT = $(PRODUCT_NAME) $(JDK_RC_PLATFORM_NAME) binary
+#JDK_RC_VER = \
+#    $(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VER).$(COOKED_BUILD_NUMBER)
+#JDK_RC_COPYRIGHT = Copyright \xA9 $(COPYRIGHT_YEAR)
+#JDK_RC_NAME = \
+#    $(PRODUCT_NAME) $(JDK_RC_PLATFORM_NAME) $(JDK_MINOR_VERSION) $(JDK_UPDATE_META_TAG)
+#JDK_RC_FVER = \
+#    $(JDK_MINOR_VERSION),$(JDK_MICRO_VERSION),$(JDK_UPDATE_VER),$(COOKED_BUILD_NUMBER)
+
+# JDK name required here
+#RC_FLAGS += -d "JDK_BUILD_ID=$(JDK_RC_BUILD_ID)" \
+#            -d "JDK_COMPANY=$(JDK_RC_COMPANY)" \
+#            -d "JDK_COMPONENT=$(JDK_RC_COMPONENT)" \
+#            -d "JDK_VER=$(JDK_RC_VER)" \
+#            -d "JDK_COPYRIGHT=$(JDK_RC_COPYRIGHT)" \
+#            -d "JDK_NAME=$(JDK_RC_NAME)" \
+#            -d "JDK_FVER=$(JDK_RC_FVER)"
+
+# Enable 7-Zip LZMA file (de)compression for Java Kernel if it is available
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ifneq ($(KERNEL), off)
+    # This is a hack to use until  7-Zip (and UPX) bundles can be put
+    # under /java/devtools.
+    ifndef DEPLOY_TOPDIR
+      DEPLOY_TOPDIR=$(JDK_TOPDIR)/../deploy
+    endif
+    # Uncomment this block to cause build failure if above assumption false
+    #DCHK = $(shell if [ ! -d $(DEPLOY_TOPDIR) ] ; then \
+    #  $(ECHO) deploy_not_a_peer_of_j2se ; \
+    #fi )
+    #ifeq ($(DCHK), deploy_not_a_peer_of_j2se)
+    #  If a build failure points to control coming here it means
+    #  it means deploy is not in the same directory
+    #  as j2se. Java Kernel can't tolerate that for the time being.
+    #endif
+    EC_TMP = $(shell if [ -d $(DEPLOY_TOPDIR)/make/lzma ] ; then \
+      $(ECHO) true ; \
+    else \
+      $(ECHO) false ; \
+    fi )
+    ifeq ($(EC_TMP), true)
+      EXTRA_COMP_INSTALL_PATH = lib\\\\deploy\\\\lzma.dll
+      # Crazy but true: deploy/make/plugin/jinstall/Makefile.jkernel does
+      # not include deploy/make/common/Defs-windows.gmk, either directly
+      # or indirectly. But it does include this file, so redundantly declare
+      # these variables that are in deploy/make/common/Defs-windows.gmk for
+      # the sake of the Java Kernel part of the deploy build. Whew!
+      EXTRA_COMP_LIB_NAME = lzma.dll
+      EXTRA_COMP_PATH = $(OUTPUTDIR)/tmp/deploy/lzma/win32/obj
+      EXTRA_COMP_CMD_PATH = $(EXTRA_COMP_PATH)/lzma.exe
+      EXTRA_COMP_LIB_PATH = $(EXTRA_COMP_PATH)/$(EXTRA_COMP_LIB_NAME)
+    endif
+  endif
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Defs.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,577 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Common variables used by all the Java makefiles.  This file should
+# not contain rules.
+#
+
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+# Check for strange explicit settings (change to empty or true)
+ifdef OPENJDK
+  ifneq ($(OPENJDK),true)
+    x:=$(error "OPENJDK (if defined) can only be set to true")
+  endif
+endif
+
+#
+# On Solaris, the 'make' utility from Sun will not work with these makefiles.
+#    This little rule is only understood by Sun's make, and is harmless
+#    when seen by the GNU make tool. If using Sun's make, this causes the
+#    make command to fail.
+#
+SUN_MAKE_TEST:sh = echo "ERROR: PLEASE USE GNU VERSION OF MAKE"; exit 33
+
+include $(SPEC)
+include $(JDK_MAKE_SHARED_DIR)/Platform.gmk
+
+# Historically PLATFORM_SRC used to be src/$(PLATFORM), but we switched it to
+# src/solaris so if you want to build on Linux you didn't need a src/linux
+# directory.  In an ideal world it would be called src/genunix but we are not
+# there yet.
+#
+ifndef SHARE_SRC
+  SHARE_SRC    = $(BUILDDIR)/../src/share
+endif
+
+# Files that cannot be included in the OpenJDK distribution are
+# collected under a parent directory which contains just those files.
+ifndef CLOSED_SRC
+  CLOSED_SRC  = $(BUILDDIR)/../src/closed
+endif
+
+# If CLOSE_SRC_INCLUDED isn't set to true, check if there's any
+# closed directory.
+ifneq ($(CLOSED_SRC_INCLUDED), true)
+  CLOSED_SRC_INCLUDED := $(shell \
+    if [ -d $(CLOSED_SRC) ] ; then \
+      echo true; \
+    else \
+      echo false; \
+    fi)
+endif
+
+# Set OPENJDK based on CLOSED_SRC_INCLUDED
+ifeq ($(CLOSED_SRC_INCLUDED), false)
+  OPENJDK = true
+endif
+
+# Define where closed directories are
+ifdef OPENJDK
+  CLOSED_SRC =
+  CLOSED_SHARE_SRC =
+else
+  ifndef CLOSED_SHARE_SRC
+    CLOSED_SHARE_SRC    = $(CLOSED_SRC)/share
+  endif
+endif
+
+#
+# Get platform definitions
+#
+
+include $(JDK_TOPDIR)/makefiles/common/Defs-$(PLATFORM).gmk
+
+#
+# SE-Embedded support, if enabled
+#
+
+include $(JDK_TOPDIR)/makefiles/common/Defs-embedded.gmk
+
+#
+# Cross-compilation Settings
+#
+ifdef CROSS_COMPILE_ARCH
+  # Can't run the tools we just built
+  USE_ONLY_BOOTDIR_TOOLS = true
+
+  # When cross-compiling CC generates code for the target, but
+  # some parts of the build generate C code that has to be compiled
+  # and executed on the build host - HOST_CC is the 'local' compiler.
+  # For linux the default is /usr/bin/gcc; other platforms need to
+  # set it explicitly
+  ifeq ($(PLATFORM), linux)
+    ifndef HOST_CC
+      HOST_CC = $(USRBIN_PATH)gcc
+    endif
+  endif
+else
+  # Must set HOST_CC if not already set
+  ifndef HOST_CC
+    HOST_CC = $(CC)
+  endif
+endif
+
+# Reset the VM name for client-only builds
+ifeq ($(JVM_VARIANT),client)
+  VM_NAME = client
+endif
+
+#
+# Freetype logic is applicable to OpenJDK only
+#
+ifdef OPENJDK
+
+ifeq ($(PLATFORM), windows)
+  DEVTOOLS_FT_DIR=$(JDK_DEVTOOLS_DIR)/win32/freetype-$(ARCH)
+endif
+ifeq ($(PLATFORM), linux)
+  DEVTOOLS_FT_DIR=$(JDK_DEVTOOLS_DIR)/$(PLATFORM)/freetype-$(ARCH)
+endif
+ifeq ($(PLATFORM), solaris)
+  # historically for Solaris we have slightly different devtools 
+  # naming conventions
+  DEVTOOLS_FT_DIR=$(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/freetype-$(ARCH)
+endif
+
+DEVTOOLS_FT_DIR_EXISTS = $(shell \
+  if [ -f $(DEVTOOLS_FT_DIR)/include/ft2build.h ] ; then \
+    echo true; \
+  else \
+    echo false; \
+  fi)
+
+  ifdef ALT_FREETYPE_LIB_PATH
+    FREETYPE_LIB_PATH = $(ALT_FREETYPE_LIB_PATH)
+    ifeq ($(PLATFORM), macosx)
+      USING_SYSTEM_FT_LIB=true
+    endif
+  else
+    ifeq ($(DEVTOOLS_FT_DIR_EXISTS), true)
+      FREETYPE_LIB_PATH = $(DEVTOOLS_FT_DIR)/lib
+    else
+      ifeq ($(PLATFORM), macosx)
+        FREETYPE_LIB_PATH = /usr/X11R6/lib
+      else
+        FREETYPE_LIB_PATH = /usr/lib
+      endif
+      USING_SYSTEM_FT_LIB=true
+    endif
+  endif 
+
+  ifdef ALT_FREETYPE_HEADERS_PATH
+    FREETYPE_HEADERS_PATH = $(ALT_FREETYPE_HEADERS_PATH)
+  else
+    ifeq ($(DEVTOOLS_FT_DIR_EXISTS), true)
+      FREETYPE_HEADERS_PATH = $(DEVTOOLS_FT_DIR)/include
+    else
+      ifeq ($(PLATFORM), macosx)
+        FREETYPE_HEADERS_PATH = /usr/X11R6/include
+      else
+        FREETYPE_HEADERS_PATH = /usr/include
+      endif
+    endif
+  endif
+endif
+
+#
+# zlib version
+#
+ZLIB_VERSION = 1.2.5
+
+
+#
+# Localizations for the different parts of the product beyond English
+#
+
+JRE_LOCALES   = de es fr it ja ko pt_BR sv zh_CN zh_TW zh_HK
+PLUGIN_LOCALES = de es fr it ja ko pt_BR sv zh_CN zh_TW zh_HK
+JDK_LOCALES  = ja zh_CN
+
+#
+# A list of locales we support but don't have resource files.
+# This is defined to optimize the search of resource bundles.
+#
+JRE_NONEXIST_LOCALES = en en_US de_DE es_ES fr_FR it_IT ja_JP ko_KR sv_SE zh
+
+#
+# For now, most libraries except libjava and libjvm itself link against libjvm
+# and libjava, the latter for its exported common utilities. libjava only
+# links against libjvm. Programs' makefiles take their own responsibility for
+# adding other libs.
+#
+# The makefiles for these packages do not link against libjvm and libjava.
+# This list will eventually go away and each Programs' makefiles
+# will have to explicitly declare that they want to link to libjava/libjvm
+#
+NO_JAVALIB_PKGS = \
+		sun.security.mscapi \
+		sun.security.krb5 \
+		sun.security.pkcs11 \
+		sun.security.jgss \
+		sun.security.jgss.wrapper \
+		sun.security.ec \
+		sun.security.smartcardio \
+		com.sun.security.auth.module
+
+ifdef PACKAGE
+# put JAVALIB first, but do not lose any platform specific values....
+  ifeq (,$(findstring $(PACKAGE),$(NO_JAVALIB_PKGS)))
+    LDLIBS_COMMON = $(JAVALIB)
+  endif
+endif # PACKAGE
+
+#
+# Libraries that must appear ahead of libc.so on the link command line
+#
+ifdef PROGRAM
+
+  ifeq ($(PLATFORM), solaris)
+    LDLIBS_COMMON = -lthread -ldl
+  endif
+
+  ifeq ($(PLATFORM), linux)
+    LDLIBS_COMMON = -ldl
+  endif
+
+  ifeq ($(PLATFORM), macosx)
+    LDLIBS_COMMON = -pthread
+  endif
+
+endif # PROGRAM
+
+LDLIBS_COMMON += $(EXTRA_LIBS)
+
+# for generated binaries
+BINDIR              = $(OUTPUTDIR)/bin$(ISA_DIR)
+# for generated libraries
+LIBDIR              = $(OUTPUTDIR)/lib
+ABS_LIBDIR          = $(ABS_OUTPUTDIR)/lib
+# Optional place to save the windows .lib files
+LIBFILES_DIR        = $(OUTPUTDIR)/libfiles
+# for ext jre files
+EXTDIR              = $(LIBDIR)/ext
+# for generated include files
+INCLUDEDIR          = $(OUTPUTDIR)/include
+# for generated class files
+CLASSBINDIR         = $(OUTPUTDIR)/classes
+DEMOCLASSDIR        = $(OUTPUTDIR)/democlasses
+# for generated tool class files
+BUILDTOOLCLASSDIR   = $(OUTPUTDIR)/btclasses
+# for build tool jar files
+BUILDTOOLJARDIR     = $(OUTPUTDIR)/btjars
+ABS_BUILDTOOLJARDIR = $(ABS_OUTPUTDIR)/btjars
+# for generated tool class files
+BUILDTOOLBINDIR     = $(OUTPUTDIR)/btbins
+# for generated java source files
+GENSRCDIR           = $(OUTPUTDIR)/gensrc
+# for generated C source files (not javah)
+GENNATIVESRCDIR     = $(OUTPUTDIR)/gennativesrc
+# for imported source files
+IMPORTSRCDIR        = $(OUTPUTDIR)/impsrc
+# for imported documents
+IMPORTDOCDIR        = $(OUTPUTDIR)/impdoc
+# for generated demo
+DEMODIR             = $(OUTPUTDIR)/demo
+NEWDEMODIR	    = $(OUTPUTDIR)/newdemo
+# for sample code
+SAMPLEDIR           = $(OUTPUTDIR)/sample
+# for generated documentation
+DOCSDIR             = $(OUTPUTDIR)/docs$(DOCSDIRSUFFIX)
+DOCSDIRSUFFIX       =
+
+# The MESSAGE, WARNING and ERROR files are used to store sanityck and 
+# warnings and errors. 
+ifndef ERROR_FILE
+  ERROR_FILE   = $(OUTPUTDIR)/sanityCheckErrors.txt
+endif
+ifndef WARNING_FILE
+  WARNING_FILE = $(OUTPUTDIR)/sanityCheckWarnings.txt
+endif
+ifndef MESSAGE_FILE
+  MESSAGE_FILE = $(OUTPUTDIR)/sanityCheckMessages.txt
+endif
+
+#where the demo source can be found
+DEMOSRCDIR          = $(SHARE_SRC)/demo
+
+#where the sample source can be found
+SAMPLESRCDIR          = $(SHARE_SRC)/sample
+
+# An attempt is made to generate unique enough directories for the
+# generated files to not have name collisisons. Most build units
+# defines PRODUCT (except Release.gmk), but then they may or may 
+# not define PACKAGE, PROGRAM, and LIBRARY. This code attempts to
+# generate a unique OBJDIR/CLASSHDRDIR for each build unit based
+# on which of those values are set within each build unit.
+
+UNIQUE_LOCATION_STRING = tmp
+
+ifneq ($(PRODUCT),)
+  UNIQUE_LOCATION_STRING += /$(PRODUCT)
+endif
+
+ifneq ($(PACKAGE),)
+  UNIQUE_LOCATION_STRING += /$(PACKAGE)
+endif
+
+ifneq ($(PROGRAM),)
+  UNIQUE_LOCATION_STRING += /$(PROGRAM)
+endif
+
+ifneq ($(LIBRARY),)
+  ifneq ($(LIBRARY_OUTPUT),)
+    UNIQUE_LOCATION_STRING += /$(LIBRARY_OUTPUT)
+  else
+    UNIQUE_LOCATION_STRING += /$(LIBRARY)
+  endif
+endif
+
+# the use of += above makes a space separated list which we need to 
+# remove for filespecs.
+#
+NULLSTRING :=
+ONESPACE := $(NULLSTRING) # space before this comment is required.
+UNIQUE_PATH = $(subst $(ONESPACE),,$(UNIQUE_LOCATION_STRING))
+
+# TEMPDIR is a unique general purpose directory
+# need to use 'override' because GNU Make on Linux exports the wrong
+# value.
+TEMPDIR      ?= $(OUTPUTDIR)/$(UNIQUE_PATH)
+ABS_TEMPDIR  ?= $(ABS_OUTPUTDIR)/$(UNIQUE_PATH)
+
+# This must be created right away for pattern rules in Sanity.gmk to work.
+dummy1:=$(shell $(MKDIR) -p $(TEMPDIR))
+dummy2:=$(shell $(MKDIR) -p $(TEMP_DISK))
+
+# OBJDIRNAME is the name of the directory where the object code is to
+#   be placed. It's name depends on whether the data model architecture 
+#   is 32-bit or not.
+ifneq ($(ARCH_DATA_MODEL), 32)
+  OBJDIRNAME  = obj$(ARCH_DATA_MODEL)$(OBJDIRNAME_SUFFIX)
+else
+  OBJDIRNAME  = obj$(OBJDIRNAME_SUFFIX)
+endif
+OBJDIR      = $(TEMPDIR)/$(OBJDIRNAME)
+
+# CLASSHDRDIR is where the generated C Class Header files go.
+CLASSHDRDIR = $(TEMPDIR)/CClassHeaders
+
+#
+# CLASSDESTDIR can be used to specify the directory where generated classes
+# are to be placed. The default is CLASSBINDIR.
+#
+ifndef CLASSDESTDIR
+CLASSDESTDIR = $(CLASSBINDIR)
+endif
+
+INCLUDES = -I. -I$(CLASSHDRDIR) \
+	$(patsubst %,-I%,$(subst $(CLASSPATH_SEPARATOR), ,$(VPATH.h))) $(OTHER_INCLUDES)
+OTHER_CPPFLAGS += $(INCLUDES)
+
+#
+# vpaths.  These are the default locations searched for source files.
+# GNUmakefiles of individual areas often override the default settings.
+# There are no longer default vpath entries for C and assembler files
+# so we can ensure that libraries don't get their hands on JVM files.
+#
+# We define an intermediate variable for Java files because
+# we use its value later to help define $SOURCEPATH
+
+ifeq ($(PLATFORM), macosx)
+  VPATH0.java = $(subst $(ONESPACE),:,$(GENSRCDIR) $(call JavaSrcDirList,,classes))
+else
+  VPATH0.java = $(GENSRCDIR)$(CLASSPATH_SEPARATOR)$(PLATFORM_SRC)/classes$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/classes
+endif
+
+ifdef OPENJDK
+  VPATH.java = $(VPATH0.java)
+else
+  #
+  # If filenames are duplicated between open/closed workspaces, prefer
+  # the closed files.
+  #
+  # Source ordering is important: some targets depend on closed files
+  # replacing open ones, and thus the closed file sources must be found
+  # before the open ones.
+  #
+  # Don't reorder without consulting the teams that depend on this behavior.
+  #
+  VPATH.java = $(CLOSED_PLATFORM_SRC)/classes$(CLASSPATH_SEPARATOR)$(CLOSED_SHARE_SRC)/classes$(CLASSPATH_SEPARATOR)$(VPATH0.java)
+endif
+vpath %.java $(VPATH.java)
+vpath %.class $(CLASSBINDIR)
+vpath %.$(OBJECT_SUFFIX) $(OBJDIR)
+
+#
+# VPATH.h is used elsewhere to generate include flags.  By default, 
+# anyone has access to the include files that the JVM area exports,
+# namely jni.h, jvm.h, and jni_utils.h, plus their platform-specific
+# relatives.
+#
+VPATH0.h =   $(PLATFORM_SRC)/javavm/export$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/javavm/export
+ifdef OPENJDK
+  VPATH.h = $(VPATH0.h)
+else
+  VPATH.h = $(CLOSED_SHARE_SRC)/javavm/export$(CLASSPATH_SEPARATOR)$(VPATH0.h)
+endif
+vpath %.h   $(VPATH.h)
+
+#
+# Used in two ways: helps link against libjava.so. Also if overridden
+# determines where your shared library is installed.
+#
+ifndef LIB_LOCATION
+  LIB_LOCATION    =  $(LIBDIR)/$(LIBARCH)
+endif
+
+#
+# Java header and stub variables
+#
+CLASSHDRS     = $(patsubst %,$(CLASSHDRDIR)/%.h,$(subst .,_,$(CLASSES.export)))
+CLASSSTUBOBJS = classstubs.$(OBJECT_SUFFIX)
+STUBPREAMBLE  = $(INCLUDEDIR)/StubPreamble.h
+
+#
+# Classpath seen by javac (different from the one seen by the VM
+# running javac), and useful variables.
+#
+SOURCEPATH	= $(VPATH.java)
+PKG		= $(shell $(EXPR) $(PACKAGE) : '\([a-z]*\)')
+PKGDIR		= $(subst .,/,$(PACKAGE))
+
+#
+# The java/javac/jdk variables (JAVAC_CMD, JAVA_CMD, etc.)
+#
+include $(JDK_MAKE_SHARED_DIR)/Defs-java.gmk
+
+UNIQUE_PATH_PATTERN = $(subst /,.,$(UNIQUE_PATH))
+
+# Run MAKE $@ for a launcher:
+#   $(call make-launcher, name, mainclass, java-args, main-args)
+define make-launcher
+$(CD) $(BUILDDIR)/launchers && \
+$(MAKE) -f Makefile.launcher \
+        PROGRAM=$(strip $1) \
+        MAIN_CLASS=$(strip $2) \
+        MAIN_JAVA_ARGS="$(strip $3)" \
+        MAIN_ARGS="$(strip $4)"
+endef
+
+#
+# Convenient macros
+#
+
+# Prepare $@ target, remove old one and making sure directory exists
+define prep-target
+mkdir -p $(@D)
+rm -f $@
+endef
+
+# Simple install of $< file to $@
+define install-file
+$(prep-target)
+$(CP) $< $@
+endef
+
+define chmod-file
+$(CHMOD) $1 $@
+endef
+
+define install-sym-link
+$(LN) -s $1 $@
+endef
+
+define install-manifest-file
+$(install-file)
+endef
+
+# Cleanup rule for after debug java run (hotspot.log file is left around)
+#   (This could be an old leftover file in a read-only area, use the @- prefix)
+HOTSPOT_LOG_NAME = hotspot.log
+define java-vm-cleanup
+if [ -w $(HOTSPOT_LOG_NAME) ] ; then rm -f $(HOTSPOT_LOG_NAME); fi
+endef
+
+# Current directory
+CURRENT_DIRECTORY := $(shell $(PWD))
+
+#
+# Create BYFILE OPT and DBG settings, if CFLAGS_OPT/foobar.o is set then it is
+#    used for this file, otherwise the default settings are used.
+#
+CFLAGS_$(VARIANT)/BYFILE    = $(CFLAGS_$(VARIANT)/$(@F)) \
+                              $(CFLAGS_$(VARIANT)$(CFLAGS_$(VARIANT)/$(@F)))
+CXXFLAGS_$(VARIANT)/BYFILE  = $(CXXFLAGS_$(VARIANT)/$(@F)) \
+                              $(CXXFLAGS_$(VARIANT)$(CXXFLAGS_$(VARIANT)/$(@F)))
+
+#
+# Tool flags
+#
+# EXTRA_CFLAGS are used to define cross-compilation options
+#
+ASFLAGS         = $(ASFLAGS_$(VARIANT)) $(ASFLAGS_COMMON) $(OTHER_ASFLAGS)
+CFLAGS          = $(CFLAGS_$(VARIANT)/BYFILE)   $(CFLAGS_COMMON) $(OTHER_CFLAGS) $(EXTRA_CFLAGS)
+CXXFLAGS        = $(CXXFLAGS_$(VARIANT)/BYFILE) $(CXXFLAGS_COMMON) $(OTHER_CXXFLAGS) $(EXTRA_CFLAGS)
+CPPFLAGS        = $(CPPFLAGS_$(VARIANT)) $(CPPFLAGS_COMMON) $(OTHER_CPPFLAGS) \
+		  $(DEFINES) $(OPTIONS:%=-D%) 
+LDFLAGS         = $(LDFLAGS_$(VARIANT)) $(LDFLAGS_COMMON) $(OTHER_LDFLAGS)
+LDLIBS          = $(OTHER_LDLIBS) $(LDLIBS_$(VARIANT)) $(LDLIBS_COMMON)
+LINTFLAGS       = $(LINTFLAGS_$(VARIANT)) $(LINTFLAGS_COMMON) \
+		  $(OTHER_LINTFLAGS)
+
+VERSION_DEFINES = -DRELEASE='"$(RELEASE)"'
+
+ifdef INSANE
+  export INSANE
+endif
+
+ifdef ALT_COPYRIGHT_YEAR
+  COPYRIGHT_YEAR = $(ALT_COPYRIGHT_YEAR)
+else
+  COPYRIGHT_YEAR := $(shell $(DATE) '+%Y')
+endif
+
+ifndef OPENJDK
+include $(JDK_TOPDIR)/make/closed/common/Defs.gmk
+endif
+
+# Install of imported file (JDK_IMPORT_PATH, or some other external location)
+define install-importonly-file
+@$(ECHO) "ASSEMBLY_IMPORT: $@"
+$(prep-target)
+$(CP) $< $@
+@if [ "$(PLATFORM)" = "linux" -a "$(@F)" = "libjvm.so" ] ; then     \
+  if [ -x /usr/sbin/selinuxenabled ] ; then                         \
+    /usr/sbin/selinuxenabled;                                       \
+    if [ $$? = 0 ] ; then                                           \
+      $(ECHO) "/usr/bin/chcon -t textrel_shlib_t $@";               \
+      /usr/bin/chcon -t textrel_shlib_t $@;                         \
+      if [ $$? != 0 ]; then                                         \
+        echo "ERROR: Cannot chcon $@";                              \
+      fi;                                                           \
+    fi;                                                             \
+  fi;                                                               \
+fi
+endef
+
+define install-import-file
+$(install-importonly-file)
+endef
+
+.PHONY: all build clean clobber
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Demo.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,415 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
+COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
+LINK.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) 
+LINK.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) 
+
+# JDK Demo building jar file.
+  
+# Some names are defined with LIBRARY inside the Defs.gmk file
+LIBRARY=$(DEMONAME)
+OBJDIR=$(TEMPDIR)/$(DEMONAME)
+
+# Input:
+#    DEMONAME           - name of the demo
+#    DEMO_ROOT          - path to root of all demo files
+#    DEMO_DESTDIR       - path to final demo destination directory
+#
+# Optional Input:
+#    DEMO_SRCDIR        - path to source if different from DEMO_ROOT
+#    DEMO_PSRCDIR       - path to additional platform specific source
+#    DEMO_PKGDIR        - sub directory of sources we want
+#    DEMO_TOPFILES      - names of top-level files relative to DEMO_ROOT
+#    DEMO_MAINCLASS     - name of the main class for the jar manifest
+#    DEMO_NATIVECLASS   - name of the class with native methods
+#    DEMO_DESCRIPTOR    - name of service file for jar (relative to DEMO_SRCDIR)
+#    DEMO_EXTRA_SRCDIR  - path to directory that holds extra sources to add
+#    DEMO_EXTRA_FILES   - extra sources relative to DEMO_EXTRA_SRCDIR
+#    DEMO_OBJECTS       - extra native object files needed
+#    DEMO_MANIFEST_ATTR - extra line to add to the jar manifest file
+
+# Assume the source directory is the root directory if not set
+ifndef DEMO_SRCDIR
+  DEMO_SRCDIR = $(DEMO_ROOT)
+endif
+ifndef DEMO_PKGDIR
+  DEMO_PKGDIR = .
+endif
+
+# Some demos have special needs
+ifneq ($(DEMONAME),agent_util)
+  DEMO_NEEDS_AGENT_UTIL    = $(findstring agent_util,$(DEMO_OBJECTS))
+endif
+ifneq ($(DEMONAME),java_crw_demo)
+  DEMO_NEEDS_JAVA_CRW_DEMO = $(findstring java_crw_demo,$(DEMO_OBJECTS))
+endif
+ifeq ($(DEMONAME),hprof)
+  DEMO_NEEDS_NPT           = true
+endif
+
+# Place to hold the build area (kind of a temp area)
+DEMO_BUILD_AREA     = $(DEMOCLASSDIR)/$(PRODUCT)/$(DEMONAME)
+
+# Destination "src" directory
+DEMO_BUILD_SRCDIR     = $(DEMO_BUILD_AREA)/src
+
+ifndef DEMO_SKIP_SRCZIP
+  DEMO_BUILD_SRCZIP     = $(DEMO_BUILD_AREA)/src.zip
+  DEMO_SOURCE_ZIP       = $(DEMO_DESTDIR)/src.zip
+endif
+
+# Place to hold the jar image we are creating
+DEMO_JAR_IMAGE      = $(DEMO_BUILD_AREA)/jar_image
+
+# The jar manifest file we will create and use
+DEMO_MANIFEST       = $(DEMO_BUILD_AREA)/manifest.mf
+
+# The list of source files or options we will supply to javac
+DEMO_JAVAC_INPUT    = $(DEMO_BUILD_AREA)/javac_input.txt
+
+# Any name of javah file
+DEMO_JAVAH_FILE = $(DEMO_NATIVECLASS:%=$(DEMO_BUILD_SRCDIR)/%.h)
+
+# Get complete list of files for this demo
+ifdef DEMO_PSRCDIR
+  DEMO_ALL_FILES2  := $(shell ( $(CD) $(DEMO_PSRCDIR) \
+    && $(FIND) $(DEMO_PKGDIR) $(SCM_DIRS_prune) -o -type f -print ) \
+    | $(SED) 's@^\./@@' )
+  DEMO_ALL_FILES   += $(DEMO_ALL_FILES2)
+endif
+ifdef DEMO_EXTRA_SRCDIR
+  DEMO_ALL_FILES   += $(DEMO_EXTRA_FILES)
+endif
+DEMO_ALL_FILES1    := $(shell ( $(CD) $(DEMO_SRCDIR) \
+  && $(FIND) $(DEMO_PKGDIR) $(SCM_DIRS_prune) -o -type f -print ) \
+  | $(SED) 's@^\./@@' )
+DEMO_ALL_FILES      += $(DEMO_ALL_FILES1)
+
+# Just the java sources
+DEMO_JAVA_SOURCES = $(filter %.java,$(DEMO_ALL_FILES))
+
+# Just the C and C++ sources
+DEMO_C_SRC_FILES   = $(filter %.c,$(DEMO_ALL_FILES))
+DEMO_CPP_SRC_FILES = $(filter %.cpp,$(DEMO_ALL_FILES))
+
+# All the native source files
+DEMO_ALL_NATIVE_SOURCES  = $(DEMO_C_SRC_FILES)
+DEMO_ALL_NATIVE_SOURCES += $(DEMO_CPP_SRC_FILES)
+DEMO_ALL_NATIVE_SOURCES += $(filter %.h,$(DEMO_ALL_FILES))
+DEMO_ALL_NATIVE_SOURCES += $(filter %.hpp,$(DEMO_ALL_FILES))
+
+# If we have java sources, then define the jar file we will create
+ifndef DEMO_JAR_NAME
+  DEMO_JAR_NAME = $(DEMONAME).jar
+endif
+ifneq ($(strip $(DEMO_JAVA_SOURCES)),)
+  DEMO_JAR            = $(DEMO_DESTDIR)/$(DEMO_JAR_NAME)
+endif
+
+# If we have native sources, define the native library we will create
+ifneq ($(strip $(DEMO_ALL_NATIVE_SOURCES)),)
+  # Path to native library we will create
+  DEMO_LIBRARY = \
+      $(DEMO_DESTDIR)/lib$(ISA_DIR)/$(LIB_PREFIX)$(DEMONAME).$(LIBRARY_SUFFIX)
+  # C and C++ compiler flags we need to add to standard flags
+  DEMO_CPPFLAGS     += -I$(DEMO_BUILD_SRCDIR)
+  # If the npt library is used we need to find the npt.h file
+  ifneq ($(DEMO_NEEDS_NPT),)
+    # The npt library is delivered as part of the JRE
+    DEMO_CPPFLAGS   += -I$(SHARE_SRC)/npt -I$(PLATFORM_SRC)/npt
+  endif
+  # Is the shared agent_util code needed
+  ifneq ($(DEMO_NEEDS_AGENT_UTIL),)
+    DEMO_FULL_SOURCES  += $(DEMO_BUILD_SRCDIR)/agent_util.c
+    DEMO_FULL_SOURCES  += $(DEMO_BUILD_SRCDIR)/agent_util.h
+  endif
+  # Is the shared java_crw_demo code needed
+  ifneq ($(DEMO_NEEDS_JAVA_CRW_DEMO),)
+    DEMO_FULL_SOURCES  += $(DEMO_BUILD_SRCDIR)/java_crw_demo.c
+    DEMO_FULL_SOURCES  += $(DEMO_BUILD_SRCDIR)/java_crw_demo.h
+  endif
+  # All the native object files we need to build the library
+  DEMO_OBJECTS += $(DEMO_C_SRC_FILES:%.c=%.$(OBJECT_SUFFIX)) \
+                  $(DEMO_CPP_SRC_FILES:%.cpp=%.$(OBJECT_SUFFIX))
+  # Linking is special depending on whether we had C++ code or on windows
+  DEMO_NEEDS_CPP = $(strip $(DEMO_CPP_SRC_FILES))
+  CPPFLAGS      += $(DEMO_CPPFLAGS)
+  ifeq ($(PLATFORM),windows)
+    # Note: This is a link with cl.exe, not link.exe, options differ quite
+    #       bit between them.
+    LINK.demo   = $(LINK.c)
+    LDLIBS.demo = $(EXTRA_LIBS) $(LFLAGS_$(COMPILER_VERSION))
+    DEMO_VERSION_INFO = $(OBJDIR)/$(LIBRARY).res
+    LDLIBS.demo += $(DEMO_VERSION_INFO)
+  else
+    ifneq ($(DEMO_NEEDS_CPP),)
+      LINK.demo   = $(LINK.cpp)
+      LDLIBS.demo = $(LIBCXX)
+      ifeq ($(PLATFORM),solaris)
+        LDLIBS.demo += -lc
+      endif
+    else
+      LINK.demo   = $(LINK.c)
+      LDLIBS.demo = $(LDLIBS)
+    endif
+  endif
+endif
+
+# Files that are considered resources (need to be in the jar file)
+DEMO_RESOURCES        += $(filter-out %.java,$(DEMO_ALL_FILES))
+
+# All destination files (top level readme files and all sources)
+#   Note: We exclude the topfiles from the src tree.
+DEMO_DEST_TOPFILES     = $(DEMO_TOPFILES:%=$(DEMO_DESTDIR)/%)
+DEMO_FILTERED_SOURCES  = $(filter-out $(DEMO_TOPFILES),$(DEMO_ALL_FILES))
+DEMO_FULL_SOURCES     += $(DEMO_FILTERED_SOURCES:%=$(DEMO_BUILD_SRCDIR)/%)
+
+# Default rule
+all: build demo_info
+
+# Used to populate the destination directories
+$(DEMO_DESTDIR)/%: $(DEMO_ROOT)/%
+	$(install-file)
+ifneq ($(DEMO_SRCDIR),$(DEMO_ROOT))
+$(DEMO_DESTDIR)/%: $(DEMO_SRCDIR)/%
+	$(install-file)
+endif
+$(DEMO_BUILD_SRCDIR)/%: $(DEMO_SRCDIR)/%
+	$(install-file)
+ifdef DEMO_PSRCDIR
+$(DEMO_BUILD_SRCDIR)/%: $(DEMO_PSRCDIR)/%
+	$(install-file)
+endif
+ifdef DEMO_EXTRA_SRCDIR
+$(DEMO_BUILD_SRCDIR)/%: $(DEMO_EXTRA_SRCDIR)/%
+	$(install-file)
+endif
+ifneq ($(DEMO_NEEDS_AGENT_UTIL),)
+$(DEMO_BUILD_SRCDIR)/%: $(DEMO_SRCDIR)/../agent_util/%
+	$(install-file)
+endif
+ifneq ($(DEMO_NEEDS_JAVA_CRW_DEMO),)
+$(DEMO_BUILD_SRCDIR)/%: $(DEMO_SRCDIR)/../java_crw_demo/%
+	$(install-file)
+endif
+
+# Jar manifest file
+MAINMANIFEST  = $(JDK_TOPDIR)/make/tools/manifest.mf
+$(DEMO_MANIFEST): $(MAINMANIFEST)
+	@$(prep-target)
+	$(SED) -e "s#@@RELEASE@@#$(RELEASE)#"           \
+               -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
+               $(MAINMANIFEST) >> $@
+	$(ECHO) "Main-Class: $(DEMO_MAINCLASS)" >> $@
+ifdef DEMO_MANIFEST_ATTR
+	$(ECHO) "$(DEMO_MANIFEST_ATTR)" >> $@
+endif
+
+# Populating the jar image directory
+$(DEMO_JAR_IMAGE)/%: $(DEMO_SRCDIR)/%
+	$(install-file)
+ifdef DEMO_PSRCDIR
+$(DEMO_JAR_IMAGE)/%: $(DEMO_PSRCDIR)/%
+	$(install-file)
+endif
+ifdef DEMO_EXTRA_SRCDIR
+$(DEMO_JAR_IMAGE)/%: $(DEMO_EXTRA_SRCDIR)/%
+	$(install-file)
+endif
+ifdef DEMO_DESCRIPTOR
+$(DEMO_JAR_IMAGE)/META-INF/services/$(DEMO_DESCRIPTOR): \
+    $(DEMO_SRCDIR)/$(DEMO_DESCRIPTOR)
+	$(install-file)
+endif
+
+# If we are creating a jar file (we have java code)
+ifdef DEMO_JAR
+
+# Input file for javac
+$(DEMO_JAVAC_INPUT): $(DEMO_JAVA_SOURCES:%=$(DEMO_BUILD_SRCDIR)/%)
+	@$(prep-target)
+	@for i in $(DEMO_JAVA_SOURCES) ; do \
+	  $(ECHO) "$(DEMO_BUILD_SRCDIR)/$$i" >> $@ ; \
+	done
+
+# Jar file creation
+$(DEMO_JAR): \
+    $(DEMO_JAVAC_INPUT) \
+    $(DEMO_MANIFEST) \
+    $(DEMO_DESCRIPTOR:%=$(DEMO_JAR_IMAGE)/META-INF/services/%) \
+    $(DEMO_RESOURCES:%=$(DEMO_JAR_IMAGE)/%)
+	@$(prep-target)
+	$(MKDIR) -p $(DEMO_JAR_IMAGE)
+	$(JAVAC_CMD) -d $(DEMO_JAR_IMAGE) -sourcepath $(DEMO_BUILD_SRCDIR) \
+	    @$(DEMO_JAVAC_INPUT)
+  ifeq ($(DEMO_INCL_SRC),true)
+	$(CP) $(DEMO_JAVA_SOURCES:%=$(DEMO_BUILD_SRCDIR)/%) $(DEMO_JAR_IMAGE)
+  endif
+  ifeq ($(DEMO_ONLY_SRC),true)
+	$(RM) -r $(DEMO_JAR_IMAGE)
+	$(MKDIR) -p $(DEMO_JAR_IMAGE)
+	$(CP) -r $(DEMO_BUILD_SRCDIR)/* $(DEMO_JAR_IMAGE)
+    ifneq ($(DEMO_TOPFILES),)
+	$(CP) $(DEMO_ROOT)/$(DEMO_TOPFILES) $(DEMO_JAR_IMAGE)
+    endif
+  endif
+	$(BOOT_JAR_CMD) -cfm $@ $(DEMO_MANIFEST) \
+	     -C $(DEMO_JAR_IMAGE) . \
+	     $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+endif
+
+ifndef DEMO_SKIP_SRCZIP
+  # Create a src.zip file
+  $(DEMO_BUILD_SRCZIP): $(DEMO_FULL_SOURCES)
+	@$(prep-target)
+	$(CD) $(DEMO_BUILD_AREA)/src && $(ZIPEXE) -q -r ../$(@F) .
+
+  # Install the destination src.zip file and create the src tree
+  $(DEMO_SOURCE_ZIP): $(DEMO_BUILD_SRCZIP)
+	$(install-file)
+endif
+
+ifeq ($(PLATFORM),windows)
+# JDK name required here
+RC_FLAGS += /D "JDK_FNAME=$(LIBRARY).dll" \
+            /D "JDK_INTERNAL_NAME=$(LIBRARY)" \
+            /D "JDK_FTYPE=0x2L"
+endif
+
+# Native library building
+ifdef DEMO_LIBRARY
+
+  # Full paths to object files
+  DEMO_FULL_OBJECTS = $(DEMO_OBJECTS:%=$(OBJDIR)/%)
+  VPATH=
+
+# Native compile rules
+$(OBJDIR)/%.$(OBJECT_SUFFIX): $(DEMO_BUILD_SRCDIR)/%.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $<
+  ifneq ($(DEMO_NEEDS_CPP),)
+$(OBJDIR)/%.$(OBJECT_SUFFIX): $(DEMO_BUILD_SRCDIR)/%.cpp
+	@$(prep-target)
+	$(COMPILE.cpp) $(CC_OBJECT_OUTPUT_FLAG)$@ $<
+  endif
+
+  # Actual creation of the native shared library (C++ and C are different)
+$(DEMO_LIBRARY): $(DEMO_FULL_OBJECTS)
+	@$(prep-target)
+  ifeq ($(PLATFORM),windows)
+	$(RC) $(RC_FLAGS) $(CC_OBJECT_OUTPUT_FLAG)$(DEMO_VERSION_INFO) $(VERSIONINFO_RESOURCE)
+	$(LINK.demo) $(SHARED_LIBRARY_FLAG) -Fe$@ \
+	    $(DEMO_FULL_OBJECTS) $(LDLIBS.demo)
+  else
+	$(LINK.demo) $(SHARED_LIBRARY_FLAG) -o $@ \
+	    $(DEMO_FULL_OBJECTS) $(LDLIBS.demo)
+  endif
+	@$(call binary_file_verification,$@)
+
+  # Generation of any javah include file, make sure objects are dependent on it
+  ifdef DEMO_NATIVECLASS
+$(DEMO_JAVAH_FILE): $(DEMO_JAR)
+	@$(prep-target)
+	$(JAVAH_CMD) -d $(DEMO_BUILD_SRCDIR) -classpath $(DEMO_JAR) \
+	    $(DEMO_NATIVECLASS)
+	@$(java-vm-cleanup)
+$(DEMO_FULL_OBJECTS): $(DEMO_JAVAH_FILE)
+  endif
+
+endif
+
+# Build involves populating the destination "src" tree, building the jar and
+#     native library, and creating a source bundle
+
+sources:  $(DEMO_FULL_SOURCES)
+	@$(ECHO) "Created $@"
+
+objects: 
+	@$(ECHO) "Created $@"
+
+# Why the nested make here? It only works this way, don't know why.
+bundles: $(DEMO_BUILD_SRCZIP)
+	$(RM) -r $(DEMO_DESTDIR)
+	$(MKDIR) -p $(DEMO_DESTDIR)
+	$(MAKE) $(DEMO_LIBRARY) $(DEMO_JAR) $(DEMO_SOURCE_ZIP) $(DEMO_DEST_TOPFILES)
+# Applets are special, no jar file, no src.zip, everything expanded.
+ifdef DEMO_IS_APPLET
+	@$(ECHO) "Expanding jar file into demos area at $(DEMO_DESTDIR)"
+	( $(CD) $(DEMO_DESTDIR) && \
+	  $(BOOT_JAR_CMD) -xfv $(DEMO_JAR_NAME) \
+	     $(BOOT_JAR_JFLAGS) && \
+	  $(RM) -r META-INF $(DEMO_JAR_NAME) && \
+	  $(java-vm-cleanup) )
+	@( $(CD) $(DEMO_DESTDIR) && $(java-vm-cleanup) )
+	@$(ECHO) "Expanding source into demos area at $(DEMO_DESTDIR)"
+	( $(CD) $(DEMO_DESTDIR) && $(UNZIP) -o src.zip && $(RM) src.zip )
+endif
+
+build: sources bundles
+
+# Printing out a demo information line
+define printDemoSetting
+if [ "$2" != "" ] ; then $(PRINTF) "%-20s %s\n" "$1:" "$2"; fi
+endef
+
+# Print out the demo information
+demo_info:
+	@$(ECHO) "========================================================="
+	@$(call printDemoSetting,DEMONAME,$(DEMONAME))
+	@$(call printDemoSetting,DEMO_ROOT,$(DEMO_ROOT))
+	@$(call printDemoSetting,DEMO_SRCDIR,$(DEMO_SRCDIR))
+	@$(call printDemoSetting,DEMO_DESTDIR,$(DEMO_DESTDIR))
+	@$(call printDemoSetting,DEMO_JAR,$(DEMO_JAR))
+	@$(call printDemoSetting,DEMO_MANIFEST_ATTR,$(DEMO_MANIFEST_ATTR))
+	@$(call printDemoSetting,DEMO_PSRCDIR,$(DEMO_PSRCDIR))
+	@$(call printDemoSetting,DEMO_EXTRA_SRCDIR,$(DEMO_EXTRA_SRCDIR))
+	@$(call printDemoSetting,DEMO_EXTRA_FILES,$(DEMO_EXTRA_FILES))
+	@$(call printDemoSetting,DEMO_TOPFILES,$(DEMO_TOPFILES))
+	@$(call printDemoSetting,DEMO_MAINCLASS,$(DEMO_MAINCLASS))
+	@$(call printDemoSetting,DEMO_DESCRIPTOR,$(DEMO_DESCRIPTOR))
+	@$(call printDemoSetting,DEMO_NATIVECLASS,$(DEMO_NATIVECLASS))
+	@$(call printDemoSetting,DEMO_LIBRARY,$(DEMO_LIBRARY))
+	@$(call printDemoSetting,DEMO_OBJECTS,$(DEMO_OBJECTS))
+	@$(call printDemoSetting,DEMO_SOURCE_ZIP,$(DEMO_SOURCE_ZIP))
+	@$(ECHO) "========================================================="
+
+# Clean rule
+clean clobber:
+	$(RM) -r $(DEMO_BUILD_AREA)
+	$(RM) -r $(DEMO_DESTDIR)
+
+# This should not be needed, but some versions of GNU make have a bug that
+#   sometimes deleted these files  for some strange  and unknown reason 
+#   (GNU make version 3.78.1 has the problem, GNU make version 3.80 doesn't?)
+.PRECIOUS: $(DEMO_FULL_SOURCES) $(DEMO_BUILD_SRCZIP) $(DEMO_SOURCE_ZIP)
+
+# List phony targets
+.PHONY: all build clean clobber demo_info \
+	sources bundles
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Library.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,326 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Generic makefile for building shared libraries.
+#
+
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+include $(JDK_TOPDIR)/makefiles/common/Classes.gmk
+
+#
+# It is important to define these *after* including Classes.gmk
+# in order to override the values defined inthat makefile.
+#
+
+ifeq ($(LIBRARY), fdlibm)
+ifeq ($(PLATFORM),windows)
+ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY).$(FDDLIBM_SUFFIX)
+ACTUAL_LIBRARY_DIR = $(OBJDIR)
+else # PLATFORM
+ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY).$(ARCH).$(FDDLIBM_SUFFIX)
+ACTUAL_LIBRARY_DIR = $(OBJDIR)
+endif #PLATFORM
+else # LIBRARY
+ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX)
+ACTUAL_LIBRARY_DIR = $(LIB_LOCATION)
+endif
+ACTUAL_LIBRARY = $(ACTUAL_LIBRARY_DIR)/$(ACTUAL_LIBRARY_NAME)
+
+library:: $(ACTUAL_LIBRARY)
+
+FILES_o   = $(patsubst %.c,   %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c))))
+FILES_o  += $(patsubst %.s,   %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_s))))
+FILES_o  += $(patsubst %.cpp, %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_cpp))))
+
+ifeq ($(PLATFORM), macosx)
+FILES_o  += $(patsubst %.m,   %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_objc))))
+FILES_o  += $(patsubst %.mm,  %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_objcpp))))
+
+INCREMENTAL_BUILD=false
+
+endif # PLATFORM
+
+ifeq ($(INCREMENTAL_BUILD),true)
+FILES_d   = $(patsubst %.c,   %.$(DEPEND_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c))))
+FILES_d  += $(patsubst %.cpp, %.$(DEPEND_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_cpp))))
+endif # INCREMENTAL_BUILD
+
+ifeq ($(PLATFORM),solaris)
+# List of all lint files, one for each .c file (only for C)
+FILES_ln   = $(patsubst %.c,   %.$(LINT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c))))
+endif
+
+LINK.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) 
+LINK.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) 
+
+#
+# C++ libraries must be linked with CC.
+#
+ifdef CPLUSPLUSLIBRARY
+LINKER=$(LINK.cc)
+else
+LINKER=$(LINK.c)
+endif
+
+$(ACTUAL_LIBRARY):: $(INIT) $(TEMPDIR) $(LIBDIR) $(BINDIR) $(EXTDIR) classheaders
+	@$(ECHO) Building lib:$(ACTUAL_LIBRARY) 
+#
+# COMPILE_APPROACH: Different approaches to compile up the native object
+#   files as quickly as possible.
+#   The setting of parallel works best on Unix, batch on Windows.
+#
+
+COMPILE_FILES_o = $(OBJDIR)/.files_compiled
+$(COMPILE_FILES_o): $(FILES_d) $(FILES_o)
+	@$(ECHO) "$<" >> $@
+clean::
+	$(RM) $(COMPILE_FILES_o)
+
+#
+# COMPILE_APPROACH=parallel: Will trigger compilations (just compilations) to
+#   happen in parallel. Greatly decreases Unix build time, even on single CPU
+#   machines, more so on multiple CPU machines. Default is 2 compiles
+#   at a time, but can be adjusted with ALT_PARALLEL_COMPILE_JOBS.
+#   Note that each .d file will also be dependent on it's .o file, see
+#   Rules.gmk.
+#   Note this does not depend on Rules.gmk to work like batch (below)
+#   and this technique doesn't seem to help Windows build time nor does
+#   it work very well, it's possible the Windows Visual Studio compilers
+#   don't work well in a parallel situation, this needs investigation.
+#
+
+ifeq ($(COMPILE_APPROACH),parallel)
+
+.PHONY: library_parallel_compile
+
+library_parallel_compile:
+	@$(ECHO) "Begin parallel compiles: $(shell $(PWD))"
+	$(MAKE) -j $(PARALLEL_COMPILE_JOBS) $(COMPILE_FILES_o)
+	@$(ECHO) "Done with parallel compiles: $(shell $(PWD))"
+
+$(ACTUAL_LIBRARY):: library_parallel_compile
+
+endif
+
+#
+# COMPILE_APPROACH=batch: Will trigger compilations (just compilations) to
+#   happen in batch mode. Greatly decreases Windows build time.
+#   See logic in Rules.gmk for how compiles happen, the $(MAKE) in
+#   library_batch_compile below triggers the actions in Rules.gmk.
+#   Note that each .d file will also be dependent on it's .o file, see
+#   Rules.gmk.
+#
+ifeq ($(COMPILE_APPROACH),batch)
+
+.PHONY: library_batch_compile
+
+library_batch_compile:
+	@$(ECHO) "Begin BATCH compiles: $(shell $(PWD))"
+	$(MAKE) $(COMPILE_FILES_o)
+	$(MAKE) batch_compile
+	@$(ECHO) "Done with BATCH compiles: $(shell $(PWD))"
+	$(MAKE) COMPILE_APPROACH=normal $(COMPILE_FILES_o)
+
+$(ACTUAL_LIBRARY):: library_batch_compile
+
+endif
+
+ifeq ($(PLATFORM), windows)
+
+#
+# Library building rules.
+#
+
+$(LIBRARY).lib:: $(OBJDIR)
+
+ifeq ($(LIBRARY), fdlibm)
+$(ACTUAL_LIBRARY):: $(OBJDIR)/$(LIBRARY).lib
+
+$(OBJDIR)/$(LIBRARY).lib:: $(OBJDIR)/$(LIBRARY).lcf
+	@$(prep-target)
+	$(AR) -NODEFAULTLIB:MSVCRT -out:$@ -nologo \
+		@$(OBJDIR)/$(LIBRARY).lcf $(OTHER_LCF) $(LDLIBS_COMMON)
+else # LIBRARY
+# build it into $(OBJDIR) so that the other generated files get put 
+# there, then copy just the DLL (and MAP file) to the requested directory.
+#
+$(ACTUAL_LIBRARY):: $(OBJDIR)/$(LIBRARY).lcf
+	@$(prep-target)
+	@$(MKDIR) -p $(OBJDIR)
+	$(LD) -dll -out:$(OBJDIR)/$(@F) \
+	  -map:$(OBJDIR)/$(LIBRARY).map \
+	  $(LFLAGS) @$(OBJDIR)/$(LIBRARY).lcf \
+	  $(OTHER_LCF) $(LDLIBS)
+	$(CP) $(OBJDIR)/$(@F) $@
+	@$(call binary_file_verification,$@)
+	$(CP) $(OBJDIR)/$(LIBRARY).map $(@D)
+	$(CP) $(OBJDIR)/$(LIBRARY).pdb $(@D)
+
+endif # LIBRARY
+
+$(OBJDIR)/$(LIBRARY).lcf: $(OBJDIR)/$(LIBRARY).res $(COMPILE_FILES_o) $(FILES_m)
+	@$(prep-target)
+	@$(MKDIR) -p $(TEMPDIR)
+	@$(ECHO) $(FILES_o) > $@ 
+ifndef LOCAL_RESOURCE_FILE
+	@$(ECHO) $(OBJDIR)/$(LIBRARY).res >> $@
+endif
+	@$(ECHO) Created $@ 
+
+# JDK name required here
+RC_FLAGS += /D "JDK_FNAME=$(LIBRARY).dll" \
+            /D "JDK_INTERNAL_NAME=$(LIBRARY)" \
+            /D "JDK_FTYPE=0x2L"
+
+$(OBJDIR)/$(LIBRARY).res: $(VERSIONINFO_RESOURCE)
+ifndef LOCAL_RESOURCE_FILE
+	@$(prep-target)
+	$(RC) $(RC_FLAGS) $(CC_OBJECT_OUTPUT_FLAG)$(@) $(VERSIONINFO_RESOURCE)
+endif
+
+#
+# Install a .lib file if required.
+#
+ifeq ($(INSTALL_DOT_LIB), true)
+$(ACTUAL_LIBRARY):: $(LIBDIR)/$(LIBRARY).lib
+
+clean:: 
+	-$(RM) $(LIBDIR)/$(LIBRARY).lib
+
+$(LIBDIR)/$(LIBRARY).lib:: $(OBJDIR)/$(LIBRARY).lib
+	$(install-file)
+
+$(LIBDIR)/$(LIBRARY).dll:: $(OBJDIR)/$(LIBRARY).dll
+	$(install-file)
+
+endif # INSTALL_DOT_LIB
+
+else # PLATFORM
+
+#
+# On Solaris, use mcs to write the version into the comment section of
+# the shared library.  On other platforms set this to false at the
+# make command line.
+#
+
+ifneq ($(PLATFORM), macosx)
+  ARFLAGS = -r
+endif
+
+$(ACTUAL_LIBRARY):: $(COMPILE_FILES_o) $(FILES_m) $(FILES_reorder)
+	@$(prep-target)
+	@$(ECHO) "STATS: LIBRARY=$(LIBRARY), PRODUCT=$(PRODUCT), OPTIMIZATION_LEVEL=$(OPTIMIZATION_LEVEL)"
+	@$(ECHO) "Rebuilding $@ because of $?"
+ifeq ($(LIBRARY), fdlibm)
+	$(AR) $(ARFLAGS) $@ $(FILES_o)
+else # LIBRARY
+	$(LINKER) $(SHARED_LIBRARY_FLAG) -o $@ $(FILES_o) $(LDLIBS)
+	@$(call binary_file_verification,$@)
+ifeq ($(WRITE_LIBVERSION),true)
+	$(MCS) -d -a "$(FULL_VERSION)" $@
+endif # WRITE_LIBVERSION
+endif # LIBRARY
+
+endif # PLATFORM
+
+#
+# Cross check all linted files against each other
+#
+ifeq ($(PLATFORM),solaris)
+lint.errors : $(FILES_ln)
+	$(LINT.c) $(FILES_ln) $(LDLIBS) 
+endif
+
+#
+# Class libraries with JNI native methods get a include to the package.
+#
+ifdef PACKAGE
+vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)
+vpath %.c $(SHARE_SRC)/native/$(PKGDIR)
+OTHER_INCLUDES += -I$(SHARE_SRC)/native/common -I$(PLATFORM_SRC)/native/common
+OTHER_INCLUDES += -I$(SHARE_SRC)/native/$(PKGDIR) \
+		  -I$(PLATFORM_SRC)/native/$(PKGDIR)
+endif
+
+#
+# Clean/clobber rules
+#
+clean::
+	$(RM) -r $(ACTUAL_LIBRARY)
+
+clobber:: clean
+
+#
+# INCREMENTAL_BUILD means that this workspace will be built over and over
+#   possibly incrementally. This means tracking the object file dependencies
+#   on include files so that sources get re-compiled when the include files
+#   change. When building from scratch and doing a one time build (like
+#   release engineering or nightly builds) set INCREMENTAL_BUILD=false.
+#
+
+ifeq ($(INCREMENTAL_BUILD),true)
+
+#
+# Workaround: gnumake sometimes says files is empty when it shouldn't
+#    was:  files := $(foreach file, $(wildcard $(OBJDIR)/*.$(DEPEND_SUFFIX)), $(file))
+#
+files := $(shell $(LS) $(OBJDIR)/*.$(DEPEND_SUFFIX) 2>/dev/null)
+
+#
+# Only include these files if we have any.
+#
+ifneq ($(strip $(files)),)
+
+include $(files)
+
+endif # files
+
+endif # INCREMENTAL_BUILD
+
+#
+# Default dependencies
+#
+
+all: build
+
+build: library
+
+debug:
+	$(MAKE) VARIANT=DBG build
+
+fastdebug:
+	$(MAKE) VARIANT=DBG FASTDEBUG=true build
+
+openjdk:
+	$(MAKE) OPENJDK=true build
+
+FORCE:
+
+.PHONY: all build debug fastdebug
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Mapfile-vers.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,97 @@
+#
+# Copyright (c) 1998, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for linking with mapfiles.
+#
+# NOTE: Not using a mapfile will expose all your extern functions and
+#	extern data symbols as part of your interface, so unless your
+#	extern names are safe from being mistaken as names from other
+#	libraries, you better use a mapfile, or use a unique naming
+#	convention on all your extern symbols.
+#
+# The mapfile will establish versioning by defining the exported interface.
+#
+# The mapfile can also force certain .o files or elf sections into the 
+#   the different segments of the resulting library/program image.
+#
+# The macro FILES_m can contain any number of mapfiles.
+#
+
+# Always make sure 'all' is the default rule
+mapfile_default_rule: all
+
+ifeq ($(PLATFORM), solaris)
+
+ifeq ($(VARIANT), OPT)
+  # OPT build MUST have a mapfile?
+  ifndef FILES_m
+    FILES_m =        mapfile-vers
+  endif
+  
+  # If we are re-ordering functions in this solaris library, we need to make
+  # sure that -xF is added to the compile lines. This option is critical and
+  # enables the functions to be reordered.
+  ifdef FILES_reorder
+    CFLAGS_OPT   += -xF
+    CXXFLAGS_OPT += -xF
+  endif
+
+INIT += $(TEMPDIR)/mapfile-vers
+
+$(TEMPDIR)/mapfile-vers : $(FILES_m) $(FILES_reorder)
+	$(prep-target)
+	$(CAT) $(FILES_m) > $@
+  ifdef FILES_reorder
+	$(SED) -e 's=OUTPUTDIR=$(OUTPUTDIR)=' $(FILES_reorder) >> $@
+  endif
+endif # VARIANT
+
+ifndef LDNOMAP
+  LDMAPFLAGS_OPT =  -M$(TEMPDIR)/mapfile-vers
+  LDMAPFLAGS_DBG =  $(FILES_m:%=-M%)
+endif
+
+endif # PLATFORM
+
+ifeq ($(PLATFORM), linux)
+
+ifeq ($(VARIANT), OPT)
+  # OPT build MUST have a mapfile?
+  ifndef FILES_m
+    FILES_m =        mapfile-vers
+  endif
+endif # VARIANT
+
+ifndef LDNOMAP
+  LDMAPFLAGS_OPT =  $(FILES_m:%=-Xlinker -version-script=%)
+  LDMAPFLAGS_DBG =  $(FILES_m:%=-Xlinker -version-script=%)
+endif
+
+endif # PLATFORM
+  
+LDFLAGS_OPT +=  $(LDMAPFLAGS_OPT)
+LDFLAGS_DBG +=  $(LDMAPFLAGS_DBG)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Modules.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,479 @@
+#
+# Copyright (c) 2009, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+JDK_MODULE_IMAGE_DIR = $(ABS_OUTPUTDIR)/jdk-module-image
+JRE_MODULE_IMAGE_DIR = $(ABS_OUTPUTDIR)/jre-module-image
+
+#
+# modules   Target to build jdk and jre module image
+#
+#           There is one jar file per module containing classes only.
+#           All module jars are currently placed under jre/lib directory.
+#
+# Open issues that need further investigation:
+# 1. Classes in jre/lib/ext/dnsns.jar are currently put in jre/lib/jndi-dns
+#    module.  META-INF/services file is not installed.
+# 2. Signed jars
+#    For JDK build, signed jars are copied to the build.
+#    All jars in the module image are unsigned.
+
+MODULE_IMAGEBINDIR = bin
+
+#
+# Targets.
+#
+INITIAL_MODULE_IMAGE_JRE=initial-module-image-jre
+INITIAL_MODULE_IMAGE_JDK=initial-module-image-jdk
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    INITIAL_MODULE_IMAGE_JRE=initial-module-image-jre-sol64
+    INITIAL_MODULE_IMAGE_JDK=initial-module-image-jdk-sol64
+  endif
+endif
+
+modules modules-clobber \
+initial-module-image-jre initial-module-image-jdk \
+initial-module-image-jre-sol64 initial-module-image-jdk-sol64 \
+trim-module-image-jre trim-module-image-jdk \
+process-module-image-jre process-module-image-jdk ::
+	@$(ECHO) ">>>Making "$@" @ `$(DATE)` ..."
+
+# Order is important here, trim jre after jdk image is created
+modules:: gen-modules \
+	 $(INITIAL_MODULE_IMAGE_JRE) $(INITIAL_MODULE_IMAGE_JDK) \
+	 trim-module-image-jre trim-module-image-jdk \
+	 process-module-image-jre process-module-image-jdk
+
+# Don't use these
+module-image-jre:: initial-module-image-jre trim-module-image-jre process-module-image-jre
+module-image-jdk:: initial-module-image-jdk trim-module-image-jdk process-module-image-jdk
+
+#
+# Paths to these files we need
+JDK_MODULE_LICENSES   = $(LICENSE_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%)
+JDK_MODULE_64_LICENSES = $(LICENSE_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%64)
+JDK_MODULE_DOCFILES   = $(OTHER_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%)
+
+JRE_MODULE_LICENSES   = $(LICENSE_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%)
+JRE_MODULE_64_LICENSES = $(LICENSE_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%64)
+JRE_MODULE_DOCFILES   = $(OTHER_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%)
+JRE_MODULE_DOCFILES  += $(JRE_NAMECHANGE_DOCLIST:%=$(JRE_MODULE_IMAGE_DIR)/%$(TEXT_SUFFIX))
+
+###### RULES
+
+# JDK files
+$(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
+	$(process-doc-file)
+# Removes LICENSE_VERSION or not
+ifdef LICENSE_VERSION
+$(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
+	$(process-doc-file)
+$(JDK_MODULE_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
+	$(process-doc-file)
+else
+$(JDK_MODULE_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%
+	$(process-doc-file)
+endif
+
+# JRE files 
+$(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
+	$(process-doc-file)
+# Add $(TEXT_SUFFIX) suffix
+ifdef TEXT_SUFFIX
+$(JRE_MODULE_IMAGE_DIR)/%$(TEXT_SUFFIX): $(SHARE_JRE_DOC_SRC)/%
+	$(process-doc-file)
+endif
+# Removes LICENSE_VERSION or not
+ifdef LICENSE_VERSION
+$(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
+	$(process-doc-file)
+$(JRE_MODULE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
+	$(process-doc-file)
+else
+$(JRE_MODULE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%
+	$(process-doc-file)
+endif
+
+######################################################
+# JRE Image
+######################################################
+
+MODULES_LIST = $(MODULES_TEMPDIR)/classlist/modules.list
+
+# Modules in the jre/lib/security directory
+POLICY_MODULES = US_export_policy local_policy
+
+# Modules in the modules/ext directory
+EXT_MODULES = localedata security-sunec security-sunjce
+
+# Build PKCS#11 on all platforms except 64-bit Windows.
+PKCS11 = security-sunpkcs11
+ifeq ($(ARCH_DATA_MODEL), 64)
+  ifeq ($(PLATFORM), windows)
+    PKCS11 =
+  endif
+endif
+
+EXT_MODULES += $(PKCS11)
+
+# Build Microsoft CryptoAPI provider only on (non-64-bit) Windows platform.
+ifeq ($(PLATFORM), windows)
+  ifneq ($(ARCH_DATA_MODEL), 64)
+    EXT_MODULES += security-sunmscapi
+  endif
+endif
+
+# Modules for JDK only
+JDK_MODULES = tools
+
+gen-modules:
+	$(CD) modules; $(MAKE) all
+
+initial-module-image-jre-setup:
+	$(RM) -r $(JRE_MODULE_IMAGE_DIR)
+	$(MKDIR) -p $(JRE_MODULE_IMAGE_DIR)
+
+# 64-bit solaris jre image contains only the 64-bit add-on files.
+initial-module-image-jre-sol64:: initial-module-image-jre-setup \
+			  $(JRE_MODULE_LICENSES) $(JRE_MODULE_64_LICENSES)
+	@# Use tar instead of cp to preserve the symbolic links
+	for dir in bin lib ; do \
+	  ( $(CD) $(OUTPUTDIR) && \
+		$(TAR) cf - `$(FIND) $$dir -name '$(ARCH)' -print` | \
+		($(CD) $(JRE_MODULE_IMAGE_DIR) && $(TAR) xf -) ) ; \
+	done
+	@# Remove some files from the jre area
+	for t in $(NOTJRETOOLS) ; do \
+	    $(RM) $(JRE_MODULE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
+	done
+	$(RM) `$(FIND) $(JRE_MODULE_IMAGE_DIR)/lib -name 'orb.idl'`
+	$(RM) `$(FIND) $(JRE_MODULE_IMAGE_DIR)/lib -name 'ir.idl'`
+
+# Construct an initial jre image (initial jdk jre) no trimming or stripping
+initial-module-image-jre:: initial-module-image-jre-setup \
+		    $(JRE_LICENSES) $(JRE_MODULE_DOCFILES) \
+		    $(BUILDMETAINDEX_JARFILE)
+	@# Copy in bin directory
+	$(CD) $(OUTPUTDIR) && $(FIND) bin -depth | $(CPIO) -pdum $(JRE_MODULE_IMAGE_DIR)
+	@# CTE plugin security change require new empty directory lib/applet
+	$(MKDIR) -p $(JRE_MODULE_IMAGE_DIR)/lib/applet
+	@# Copy files but not .jar in lib directory 
+	$(CD) $(OUTPUTDIR) && $(FIND) lib -depth | $(EGREP) -v ".jar$$" | $(CPIO) -pdum $(JRE_MODULE_IMAGE_DIR)
+	@#
+	@# copy modules to jre/lib
+	@#
+	for m in `$(NAWK) '{print $$1}' $(MODULES_LIST)` ; do \
+	    $(CP) $(MODULES_DIR)/$$m/lib/$$m.jar $(JRE_MODULE_IMAGE_DIR)/lib ; \
+	done
+	$(MKDIR) -p $(JRE_MODULE_IMAGE_DIR)/lib/ext
+	for m in $(EXT_MODULES) ; do \
+           $(MV) $(JRE_MODULE_IMAGE_DIR)/lib/$$m.jar $(JRE_MODULE_IMAGE_DIR)/lib/ext ; \
+        done
+	for m in $(POLICY_MODULES) ; do \
+           $(MV) $(JRE_MODULE_IMAGE_DIR)/lib/$$m.jar $(JRE_MODULE_IMAGE_DIR)/lib/security; \
+        done
+	@# Remove jdk modules
+	for m in $(JDK_MODULES) ; do \
+           $(RM) $(JRE_MODULE_IMAGE_DIR)/lib/$$m.jar ; \
+        done
+
+	@# Make sure all directories are read/execute for everyone
+	$(CHMOD) a+rx `$(FIND) $(JRE_MODULE_IMAGE_DIR) -type d`
+	@# Remove some files from the jre area
+	for t in $(NOTJRETOOLS) ; do \
+	    $(RM) $(JRE_MODULE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
+	done
+	@# Remove orb.idl and ir.idl from jre
+	$(FIND) $(JRE_MODULE_IMAGE_DIR)/lib -name 'orb.idl' -exec $(RM) \{} \;
+	$(FIND) $(JRE_MODULE_IMAGE_DIR)/lib -name 'ir.idl' -exec $(RM) \{} \;
+	@# Generate meta-index to make boot and extension class loaders lazier
+	$(CD) $(JRE_MODULE_IMAGE_DIR)/lib && \
+	    $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \
+		-o meta-index *.jar
+	@$(CD) $(JRE_MODULE_IMAGE_DIR)/lib && $(java-vm-cleanup)
+	$(CD) $(JRE_MODULE_IMAGE_DIR)/lib/ext && \
+	    $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \
+		-o meta-index *.jar
+	@$(CD) $(JRE_MODULE_IMAGE_DIR)/lib/ext && $(java-vm-cleanup)
+ifeq ($(PLATFORM), windows)
+	@# Remove certain *.lib files
+	$(CD) $(JRE_MODULE_IMAGE_DIR)/lib && \
+            $(RM) java.$(LIB_SUFFIX) jvm.$(LIB_SUFFIX) \
+                  hpi.$(LIB_SUFFIX) awt.$(LIB_SUFFIX) jawt.$(LIB_SUFFIX)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+	@# The Java Kernel JRE image ships with a special VM.  It is not included
+	@# in the full JRE image, so remove it.  Also, is it only for 32-bit windows.
+	$(CD) $(JRE_MODULE_IMAGE_DIR)/bin && $(RM) -r kernel
+  endif
+endif # Windows
+ifneq ($(PLATFORM), windows)
+	$(call copy-man-pages,$(JRE_MODULE_IMAGE_DIR),$(JRE_MAN_PAGES))
+endif # !windows
+
+# Trim out any extra files not for the jre shipment but wanted in the jdk jre.
+#   (Note the jdk WILL want the jre image before this trimming)
+#   Removes server VM on Windows 32bit.
+#   Remove certain shared libraries that should not be in the jre image
+#      but should be in the jdk jre image.
+trim-module-image-jre::
+ifeq ($(PLATFORM), windows)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+	$(RM) -r $(JRE_MODULE_IMAGE_DIR)/bin/server
+  endif
+  ifdef NOTJRE_SHARED_LIBS
+	for l in $(NOTJRE_SHARED_LIBS) ; do \
+	    $(RM) $(JRE_MODULE_IMAGE_DIR)/bin/$$l ; \
+	done ;
+  endif
+else # PLATFORM
+  ifdef NOTJRE_SHARED_LIBS
+	for l in $(NOTJRE_SHARED_LIBS) ; do \
+	    $(RM) $(JRE_MODULE_IMAGE_DIR)/lib/$(LIBARCH)/$$l ; \
+	done ;
+  endif
+endif # PLATFORM
+
+# Get list of all Elf files in the jre
+JRE_MODULE_ELF_LIST=$(MODULES_TEMPDIR)/jre-elf-files.list
+$(JRE_MODULE_ELF_LIST):
+	@$(prep-target)
+ifneq ($(PLATFORM), windows)
+	$(RM) $@
+	$(FIND) $(JRE_MODULE_IMAGE_DIR)/lib -type f -name \*.$(LIB_SUFFIX) >> $@
+	$(FILE) `$(FIND) $(JRE_MODULE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+endif
+
+# Post process the image (strips and mcs on Elf files we are shipping)
+#   (Note the jdk WILL want the jre image before this processing)
+process-module-image-jre:: $(JRE_MODULE_ELF_LIST)
+ifneq ($(POST_STRIP_PROCESS), )
+	for f in `$(CAT) $(JRE_MODULE_ELF_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
+	  $(POST_STRIP_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+ifneq ($(POST_MCS_PROCESS), )
+	for f in `$(CAT) $(JRE_MODULE_ELF_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
+	  $(POST_MCS_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+	$(RM) $(JRE_MODULE_ELF_LIST)
+
+######################################################
+# JDK Image
+######################################################
+# Note: cpio ($(CPIO)) sometimes leaves directories without rx access.
+
+initial-module-image-jdk-setup:
+	$(RM) -r $(JDK_MODULE_IMAGE_DIR)
+	$(MKDIR) -p $(JDK_MODULE_IMAGE_DIR)/jre
+	($(CD) $(JRE_MODULE_IMAGE_DIR) && $(FIND) . -depth -print \
+	      | $(CPIO) -pdum $(JDK_MODULE_IMAGE_DIR)/jre )
+	$(RM) -rf $(JDK_MODULE_IMAGE_DIR)/jre/man
+	$(CHMOD) a+rx `$(FIND) $(JDK_MODULE_IMAGE_DIR) -type d`
+
+initial-module-image-jdk64-bindemos:
+	for dir in bin demo ; do \
+	  ( $(CD) $(OUTPUTDIR) && \
+		$(TAR) cf - `$(FIND) $$dir -name '$(LIBARCH)' -print` | \
+		($(CD) $(JDK_MODULE_IMAGE_DIR) && $(TAR) xf -) ) ; \
+        done
+
+# Solaris 64 bit image is special
+initial-module-image-jdk-sol64:: initial-module-image-jdk-setup \
+			  initial-module-image-jdk64-bindemos \
+			  $(JDK_MODULE_LICENSES) $(JDK_MODULARLIZED_64_LICENSES)
+
+# DB files to add
+ifeq ($(OPENJDK),true)
+
+initial-module-image-jdk-db:
+
+else
+
+# Create the list of db *.zip files to bundle with jdk
+ABS_DB_PATH  :=$(call FullPath,$(CLOSED_SHARE_SRC)/db)
+DB_ZIP_LIST = $(shell $(LS) $(ABS_DB_PATH)/*.zip 2>/dev/null)
+
+initial-module-image-jdk-db: $(DB_ZIP_LIST)
+	$(MKDIR) -p $(JDK_MODULE_IMAGE_DIR)/db
+	for d in $(DB_ZIP_LIST); do \
+          ($(CD) $(JDK_MODULE_IMAGE_DIR)/db && $(UNZIP) -o $$d); \
+	done
+
+endif
+
+# Standard jdk image
+initial-module-image-jdk:: initial-module-image-jdk-setup \
+		    initial-module-image-jdk-db \
+		    $(JDK_MODULE_LICENSES) $(JDK_MODULE_DOCFILES)
+	$(MKDIR) $(JDK_MODULE_IMAGE_DIR)/lib
+	@#
+	@# copy jdk modules to jdk/lib
+	@#
+	$(MKDIR) -p $(JDK_MODULE_IMAGE_DIR)/lib
+	for m in $(JDK_MODULES) ; do \
+	    $(CP) $(MODULES_DIR)/$$m/lib/$$m.jar $(JDK_MODULE_IMAGE_DIR)/lib ; \
+        done
+  ifeq ($(PLATFORM), windows)
+	@#
+	@# lib/
+	@#
+	$(CP) $(LIBDIR)/$(LIB_PREFIX)jvm.$(LIB_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/lib
+	$(CP) $(LIBDIR)/$(LIB_PREFIX)jawt.$(LIB_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/lib
+	@#
+	@# bin/
+	@#
+	@# copy all EXE files and only certain DLL files from BINDIR
+	$(MKDIR) -p $(JDK_MODULE_IMAGE_DIR)/bin
+	$(CP) $(BINDIR)/*$(EXE_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/bin
+	$(CP) $(BINDIR)/jli.$(LIBRARY_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/bin
+    ifeq ($(COMPILER_VERSION), VS2010)
+	$(CP) $(BINDIR)/msvc*100.$(LIBRARY_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/bin
+    endif
+    ifeq ($(ARCH_DATA_MODEL), 32)
+      ifeq ($(COMPILER_VERSION), VS2003)
+	$(CP) $(BINDIR)/msvc*71.$(LIBRARY_SUFFIX) $(JDK_MODULE_IMAGE_DIR)/bin
+      endif
+    endif
+  else # PLATFORM
+	@#
+	@# bin/
+	@#
+	($(CD) $(BINDIR)/.. && $(TAR) cf - \
+	    `$(FIND) bin \( -type f -o -type l \) -print `) | \
+	    ($(CD) $(JDK_MODULE_IMAGE_DIR) && $(TAR) xf -)
+  endif # PLATFORM
+	@#
+	@# lib/ct.sym
+	@#
+	$(MKDIR) -p $(OUTPUTDIR)/symbols/META-INF/sym
+	$(JAVAC_CMD) -XDprocess.packages -proc:only \
+	    -processor com.sun.tools.javac.sym.CreateSymbols \
+	    -Acom.sun.tools.javac.sym.Jar=$(RT_JAR) \
+	    -Acom.sun.tools.javac.sym.Dest=$(OUTPUTDIR)/symbols/META-INF/sym/rt.jar \
+	    $(CORE_PKGS) $(NON_CORE_PKGS) $(EXCLUDE_PROPWARN_PKGS)
+	$(BOOT_JAR_CMD) c0f $(LIBDIR)/ct.sym \
+	    -C $(OUTPUTDIR)/symbols META-INF $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+	$(CP) $(LIBDIR)/ct.sym $(JDK_MODULE_IMAGE_DIR)/lib/ct.sym
+	@#
+	@# CORBA supported orb.idl and ir.idl should be copied to lib
+	@#
+	$(CP) $(LIBDIR)/orb.idl $(JDK_MODULE_IMAGE_DIR)/lib/orb.idl
+	$(CP) $(LIBDIR)/ir.idl $(JDK_MODULE_IMAGE_DIR)/lib/ir.idl
+  ifeq ($(PLATFORM), linux)
+	@#
+	@# on Linux copy jexec from jre/lib to /lib
+	@#
+	$(CP) $(LIBDIR)/jexec $(JDK_MODULE_IMAGE_DIR)/lib/jexec
+  endif # PLATFORM
+	@#
+	@# demo, include
+	@#
+	$(CP) -r -f $(DEMODIR) $(JDK_MODULE_IMAGE_DIR)
+	$(CP) -r -f $(SAMPLEDIR) $(JDK_MODULE_IMAGE_DIR)
+	$(CP) -r $(INCLUDEDIR) $(JDK_MODULE_IMAGE_DIR)
+	@#
+	@# Swing BeanInfo generation
+	@#
+	$(CD) javax/swing/beaninfo && $(MAKE) JDK_IMAGE_DIR=$(JDK_MODULE_IMAGE_DIR) swing-1.2-beans
+ifneq ($(PLATFORM), windows)
+	$(call copy-man-pages,$(JDK_MODULE_IMAGE_DIR),$(JDK_MAN_PAGES))
+endif # !windows
+
+# Trim out files we don't want to ship
+trim-module-image-jdk::
+	@# Remove tools that should not be part of SDK.
+	for t in $(NOTJDKTOOLS); do \
+	    $(RM) $(JDK_MODULE_IMAGE_DIR)/bin/$${t}$(EXE_SUFFIX) \
+		  $(JDK_MODULE_IMAGE_DIR)/bin/*/native_threads/$${t}$(EXE_SUFFIX); \
+	done
+
+# Get list of Elf files in the jdk
+JDK_MODULE_ELF_LIST=$(MODULES_TEMPDIR)/jdk-elf-files.list
+$(JDK_MODULE_ELF_LIST):
+	@$(prep-target)
+ifneq ($(PLATFORM), windows)
+	$(RM) $@
+	$(FIND) $(JDK_MODULE_IMAGE_DIR)/jre/lib -type f -name \*.$(LIB_SUFFIX) >> $@
+	$(FILE) `$(FIND) $(JDK_MODULE_IMAGE_DIR)/jre/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+	file `$(FIND) $(JDK_MODULE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+endif
+
+# Post process the image (strips and mcs on files we are shipping)
+process-module-image-jdk:: $(JDK_MODULE_ELF_LIST)
+ifneq ($(POST_STRIP_PROCESS), )
+	for f in `$(CAT) $(JDK_MODULE_ELF_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
+	  $(POST_STRIP_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+ifneq ($(POST_MCS_PROCESS), )
+	for f in `$(CAT) $(JDK_MODULE_ELF_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
+	  $(POST_MCS_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+	$(RM) $(JDK_MODULE_ELF_LIST)
+
+######################################################
+# clobber
+######################################################
+modules-clobber::
+	$(RM) -r $(JDK_MODULE_IMAGE_DIR)
+	$(RM) -r $(JRE_MODULE_IMAGE_DIR)
+
+modules modules-clobber::
+	@$(ECHO) ">>>Finished making "$@" @ `$(DATE)` ..."
+	@$(java-vm-cleanup)
+
+.PHONY: modules module-image-jre module-image-jdk \
+	initial-module-image-jre initial-module-image-jdk \
+	initial-module-image-jre-sol64 initial-module-image-jdk-sol64 \
+        initial-module-image-jdk-setup \
+	initial-module-image-jdk-db \
+        initial-module-image-jdk64-bindemos \
+        initial-module-image-jre-setup \
+	trim-module-image-jre trim-module-image-jdk \
+	process-module-image-jre process-module-image-jdk \
+	install-previous-jre install-previous-jdk \
+	modules-clobber
+
+# Force rule
+FRC:
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Program.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,319 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Generic makefile for building executables.
+#
+
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+#
+# If building programs, use a normal compile approach
+#
+ifeq ($(COMPILE_APPROACH),batch)
+  override COMPILE_APPROACH = normal
+endif
+
+# set the platform specific directory for macosx, also this platform shares
+# substantial family ties with its siblings (solaris and linux), thus we add
+# solaris src path to its compilation dependencies.
+ifeq ($(PLATFORM), macosx)
+  LAUNCHER_PLATFORM_SRC = $(BUILDDIR)/../src/macosx
+  LAUNCHER_SOLARIS_PLATFORM_SRC  = $(BUILDDIR)/../src/solaris
+else
+  LAUNCHER_PLATFORM_SRC = $(PLATFORM_SRC)
+endif
+
+ifndef LAUNCHER_SHARE_SRC
+  LAUNCHER_SHARE_SRC = $(SHARE_SRC)
+endif
+
+ACTUAL_PROGRAM_NAME = $(PROGRAM)$(EXE_SUFFIX)
+ACTUAL_PROGRAM_DIR  = $(BINDIR)
+ACTUAL_PROGRAM      = $(ACTUAL_PROGRAM_DIR)/$(ACTUAL_PROGRAM_NAME)
+
+# Make sure the default rule is all
+program_default_rule: all
+
+program: $(ACTUAL_PROGRAM)
+
+# Work-around for missing processor specific mapfiles
+ifndef CROSS_COMPILE_ARCH
+  # reuse the mapfiles in the launcher's directory, the same should
+  # be applicable to the tool launchers as well.
+  FILES_m = $(BUILDDIR)/java/main/java/mapfile-$(ARCH)
+  include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+include $(JDK_TOPDIR)/makefiles/common/Rules.gmk
+
+ifdef NEVER_ACT_AS_SERVER_CLASS_MACHINE
+  OTHER_CPPFLAGS += -DNEVER_ACT_AS_SERVER_CLASS_MACHINE
+endif
+
+#
+# Create a dependency on libjli (Java Launcher Infrastructure)
+#
+# On UNIX, this is a relative dependency using $ORIGIN. Unfortunately, to
+# do this reliably on Linux takes a different syntax than Solaris.
+#
+# On Windows, this is done by using the same directory as the executable
+# itself, as with all the Windows libraries.
+#
+ifeq ($(PLATFORM), macosx)
+  ifneq ($(ARCH), universal)
+    LDFLAGS += -Wl,-all_load
+  endif
+  LDFLAGS += $(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/static/libjli.a
+
+  ifeq ($(SYSTEM_ZLIB),true)
+    OTHER_LDLIBS += -lz
+  endif
+endif
+
+ifneq (,$(findstring $(PLATFORM), linux solaris)) # UNIX systems
+  LDFLAGS += -L $(LIBDIR)/$(LIBARCH)/jli
+  OTHER_LDLIBS += -ljli
+  ifeq ($(PLATFORM), solaris)
+    ifeq ($(ARCH_DATA_MODEL), 32)
+      LDFLAGS += -R \$$ORIGIN/../lib/$(LIBARCH)/jli
+      LDFLAGS += -R \$$ORIGIN/../jre/lib/$(LIBARCH)/jli
+    else
+      LDFLAGS += -R \$$ORIGIN/../../lib/$(LIBARCH)/jli
+      LDFLAGS += -R \$$ORIGIN/../../jre/lib/$(LIBARCH)/jli
+    endif
+  endif
+  ifeq ($(PLATFORM), linux)
+    LDFLAGS += $(LDFLAG_Z_ORIGIN)
+    LDFLAGS += -Wl,--allow-shlib-undefined
+    LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/../lib/$(LIBARCH)/jli
+    LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/../jre/lib/$(LIBARCH)/jli
+  endif
+endif
+
+ifeq ($(PLATFORM), windows)
+  JLI_LCF = $(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/jli.lcf
+  ifdef STATIC_JLI
+    LDFLAGS += -libpath:$(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/static
+  else
+    LDFLAGS += -libpath:$(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)
+  endif
+  OTHER_LDLIBS += jli.lib
+endif
+
+#
+# Launcher specific files.
+#
+FILES_o = $(OBJDIR)/main.$(OBJECT_SUFFIX)
+
+$(ACTUAL_PROGRAM):: classes $(INIT) 
+
+#
+# Windows only
+#
+ifeq ($(PLATFORM), windows)
+  # JDK name required here
+  RC_FLAGS += /D "JDK_FNAME=$(PROGRAM)$(EXE_SUFFIX)" \
+              /D "JDK_INTERNAL_NAME=$(PROGRAM)" \
+              /D "JDK_FTYPE=0x1L"
+
+  $(OBJDIR)/$(PROGRAM).res: $(VERSIONINFO_RESOURCE)
+	@$(prep-target)
+  ifndef LOCAL_RESOURCE_FILE
+	$(RC) $(RC_FLAGS) $(CC_OBJECT_OUTPUT_FLAG)$(@) $(VERSIONINFO_RESOURCE)
+  endif
+
+  $(OBJDIR)/$(PROGRAM).lcf: $(OBJDIR)/$(PROGRAM).res $(FILES_o)
+	@$(prep-target)
+	@$(ECHO) $(FILES_o) > $@ 
+  ifndef LOCAL_RESOURCE_FILE
+	@$(ECHO) $(OBJDIR)/$(PROGRAM).res >> $@
+  endif
+	@$(ECHO) setargv.obj >> $@
+	@$(ECHO) Created $@ 
+
+  $(ACTUAL_PROGRAM):: $(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX)
+	@$(install-file)
+
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    STACK_SIZE=327680
+  else
+    # We need more Stack for Windows 64bit
+    STACK_SIZE=1048576
+  endif
+
+  IMVERSION=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VER).$(COOKED_BUILD_NUMBER)
+  $(OBJDIR)/$(PROGRAM).exe.manifest: $(JDK_TOPDIR)/src/windows/resource/java.manifest
+	@$(prep-target)
+	$(SED) 's%IMVERSION%$(IMVERSION)%g;s%PROGRAM%$(PROGRAM)%g' $< > $@
+
+  # We used a hand-crafted manifest file for all executables.
+  # It is tweaked to embed the build number and executable name.
+  # Use ";#2" for .dll and ";#1" for .exe in the MT command below:
+  $(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX):: $(OBJDIR)/$(PROGRAM).lcf $(FILES_o) $(JLI_LCF) $(OBJDIR)/$(PROGRAM).exe.manifest
+	@$(prep-target)
+	@set -- $?; \
+	    $(ECHO) Rebuilding $@ because of $$1 $$2 $$3 $$4 $$5 $$6 $${7:+...};
+	$(LD) -out:$@ /STACK:$(STACK_SIZE) \
+	    -map:$(OBJDIR)/$(PROGRAM).map $(LFLAGS) $(LDFLAGS) \
+	    @$(OBJDIR)/$(PROGRAM).lcf $(LDLIBS)
+  ifdef MT
+	$(MT) /manifest $(OBJDIR)/$(PROGRAM).exe.manifest /outputresource:$@;#1
+  endif
+	@$(call binary_file_verification,$@)
+else
+  #
+  # Note that we have to link -lthread even when USE_PTHREADS is true.
+  # This is becuase checkForCorrectLibthread() croaks otherwise.
+  #
+  LIBTHREAD = -lthread
+  ifeq ($(USE_PTHREADS),true)
+    THREADLIBS = -lpthread $(LIBTHREAD)
+  else
+    THREADLIBS = $(LIBTHREAD)
+  endif
+
+  ifeq ($(PLATFORM), macosx)
+    THREADLIBS = -pthread
+    # Needed for linking the various launchers
+    LDFLAGS += -framework Cocoa -framework Security \
+               -framework ApplicationServices
+    OTHER_CPPFLAGS += -DPACKAGE_PATH='"$(PACKAGE_PATH)"'
+
+    # Default Info.plist file for the command line tools. This gets overridden by
+    # some of the jvmstat tools so that they have task_for_pid() privileges
+    ifndef INFO_PLIST_FILE
+      INFO_PLIST_FILE = Info-cmdline.plist
+    endif
+    LDFLAGS += -sectcreate __TEXT __info_plist $(LAUNCHER_PLATFORM_SRC)/lib/$(INFO_PLIST_FILE)
+  else 
+    INFO_PLIST_FILE=
+  endif
+
+  #
+  # This rule only applies on unix.  It supports quantify and its ilk.
+  #
+  $(ACTUAL_PROGRAM):: $(FILES_o)
+	@$(prep-target)
+	@set -- $?; \
+	$(ECHO) Rebuilding $@ because of $$1 $$2 $$3 $$4 $$5 $$6 $${7:+...};
+	@$(MKDIR) -p $(TEMPDIR)
+	$(LINK_PRE_CMD) $(CC) $(CC_OBJECT_OUTPUT_FLAG)$@ $(LDFLAGS) \
+	$(FILES_o) $(THREADLIBS) $(LDLIBS)
+  ifeq ($(findstring privileged, $(INFO_PLIST_FILE)), privileged)
+	-codesign -s openjdk_codesign $@
+  endif
+	@$(call binary_file_verification,$@)
+endif # PLATFORM
+
+clean:: 
+ifeq ($(PLATFORM), windows)
+	$(RM) $(OBJDIR)/$(PROGRAM).rc
+	$(RM) $(OBJDIR)/$(PROGRAM).ico
+	$(RM) $(OBJDIR)/$(PROGRAM).lcf
+	$(RM) $(OBJDIR)/$(PROGRAM).map
+	$(RM) $(OBJDIR)/$(PROGRAM).exp
+	$(RM) $(OBJDIR)/$(PROGRAM).lib
+	$(RM) $(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX)
+	$(RM) $(OBJDIR)/$(PROGRAM).ilk
+	$(RM) *.pdb
+endif
+
+
+clobber:: 
+	$(RM) $(ACTUAL_PROGRAM)
+
+#
+# Now include make dependencies (created during compilation, see Rules.gmk)
+#
+ifeq ($(INCREMENTAL_BUILD),true)
+  # Workaround: gnumake sometimes says files is empty when it shouldn't
+  #    was:  files := $(foreach file, $(wildcard */$(ARCH)/*.$(DEPEND_SUFFIX)), $(file))
+  files := $(shell $(LS) $(OBJDIR)/*.$(DEPEND_SUFFIX) 2>/dev/null)
+  ifneq ($(strip $(files)),)
+    include $(files)
+  endif
+endif
+
+ifdef JAVA_ARGS
+  OTHER_CPPFLAGS += -DJAVA_ARGS='$(JAVA_ARGS)'
+  OTHER_CPPFLAGS += -DLAUNCHER_NAME='"$(LAUNCHER_NAME)"'
+endif
+
+ifeq ($(PLATFORM), windows)
+  ifdef RELEASE
+    OTHER_CPPFLAGS += -DVERSION='"$(RELEASE)"'
+  endif
+endif
+
+
+ifneq ($(PLATFORM), windows)
+  HAVE_GETHRTIME=true
+endif
+
+ifeq ($(HAVE_GETHRTIME),true)
+  OTHER_CPPFLAGS += -DHAVE_GETHRTIME
+endif
+
+OTHER_INCLUDES += -I$(LAUNCHER_SHARE_SRC)/bin -I$(LAUNCHER_PLATFORM_SRC)/bin
+ifeq ($(PLATFORM), macosx)
+  OTHER_INCLUDES += -I$(LAUNCHER_SOLARIS_PLATFORM_SRC)/bin
+  ifneq ($(SYSTEM_ZLIB), true)
+    OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3
+  endif
+else
+  OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3
+endif
+
+OTHER_CPPFLAGS  += -DPROGNAME='"$(PROGRAM)"'
+VERSION_DEFINES += -DFULL_VERSION='"$(FULL_VERSION)"'
+
+VERSION_DEFINES += -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \
+                   -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"'
+
+
+
+$(OBJDIR)/main.$(OBJECT_SUFFIX): $(LAUNCHER_SHARE_SRC)/bin/main.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$(OBJDIR)/main.$(OBJECT_SUFFIX) \
+		$(VERSION_DEFINES) $<
+
+#
+# Default dependencies
+#
+
+all: build
+
+build: program
+
+debug:
+	$(MAKE) VARIANT=DBG build
+
+fastdebug:
+	$(MAKE) VARIANT=DBG FASTDEBUG=true build
+
+.PHONY: all build program clean clobber debug fastdebug
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Release-embedded.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,230 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# SE-Embedded Reduced JRE targets
+#
+ifdef JAVASE_EMBEDDED
+
+reduced-image-jre reduced-headless-image-jre ::
+	@$(ECHO) ">>>Making "$@" @ `$(DATE)` ..."
+
+# Add the reduced-jre images as pre-reqs. These will be processed last
+images:: reduced-image-jre reduced-headless-image-jre
+
+
+######################################################
+# Create the headless rt.jar
+######################################################
+
+NOT_HEADLESS_RT_JAR_LIST = $(ABS_TEMPDIR)/not_hl_rt_jar.list
+HEADLESS_RT_JAR_FILELIST=$(JARFILELISTS_TEMPDIR)/hl_rt_jar_list
+TOTAL_HEADLESS_JAR_FILELIST=$(REORDER_TEMPDIR)/hl_file_list
+HEADLESS_CLASSLIST=$(ABS_TEMPDIR)/headless_classlist
+
+# Add the jar file directories that we don't want in the
+# headless JRE.  If you want to remove most classes in a
+# directory, put the directory in the NOT_HEADLESS_RT_JAR_LIST
+# and put the individual classes you want to keep in the 
+# HEADLESS_CLASSLIST file. 
+$(NOT_HEADLESS_RT_JAR_LIST): $(NOT_RT_JAR_LIST)
+	$(RM) $(HEADLESS_CLASSLIST)
+	$(RM) $(NOT_HEADLESS_RT_JAR_LIST)
+	$(CP) $(NOT_RT_JAR_LIST) $(NOT_HEADLESS_RT_JAR_LIST)
+# List all the packages to be excluded
+	$(ECHO) "sun/awt/motif/" >> $@
+	$(ECHO) "sun/awt/X11/" >> $@
+	$(ECHO) "sun/applet/" >> $@
+	$(ECHO) "sun/java2d/opengl/" >> $@
+	$(ECHO) "com/sun/java/swing/plaf/" >> $@
+# List all the individual classes to be included
+	$(ECHO) "sun/awt/motif/MFontConfiguration.class" >$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/applet/AppContextCreator.class" >>$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/applet/AppletAudioClip.class" >>$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/java2d/opengl/GLXSurfaceData.class" >>$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/java2d/opengl/GLXSurfaceData"\$$"GLXOffScreenSurfaceData.class" >>$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/java2d/opengl/GLXVolatileSurfaceManager.class" >>$(HEADLESS_CLASSLIST)
+	$(ECHO) "sun/java2d/opengl/OGLSurfaceData.class" >>$(HEADLESS_CLASSLIST)
+
+
+$(TOTAL_HEADLESS_JAR_FILELIST): $(JARREORDER_JARFILE) $(NOT_HEADLESS_RT_JAR_LIST)
+	$(prep-target)
+	$(RM) $@.temp
+	$(CD) $(CLASSBINDIR) ; \
+		$(BOOT_JAVA_CMD) -jar $(JARREORDER_JARFILE) \
+		-o  $@.temp - $(NOT_HEADLESS_RT_JAR_LIST)  .
+# Add on the explicitly included class files from the otherwise excluded packages
+	$(CAT) $(HEADLESS_CLASSLIST) >> $@.temp
+	$(MV) $@.temp $@
+	@$(CD) $(CLASSBINDIR); $(java-vm-cleanup)
+
+# Create the headless rt.jar file list & non-class files list
+MakeHeadlessJarFileList: $(TOTAL_HEADLESS_JAR_FILELIST) $(JARSPLIT_JARFILE)
+	@$(RM) $(HEADLESS_RT_JAR_FILELIST) $(RES_JAR_FILELIST)
+	$(BOOT_JAVA_CMD) -jar $(JARSPLIT_JARFILE) $(TOTAL_HEADLESS_JAR_FILELIST) \
+		-o  $(HEADLESS_RT_JAR_FILELIST) $(RES_JAR_FILELIST)
+	@$(java-vm-cleanup)
+
+# Create headless rt.jar
+HL_RT_JAR=$(ABS_TEMPDIR)/rt-hl-orig.jar
+$(HL_RT_JAR): MakeHeadlessJarFileList $(RT_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) ; \
+		$(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(RT_JAR_MANIFEST_FILE) $@ @$(HEADLESS_RT_JAR_FILELIST) \
+		 $(JAR_JFLAGS)
+	@$(CD) $(CLASSBINDIR); $(java-vm-cleanup)
+
+
+#
+# Produce a reduced Headful JRE for Embedded Devices
+#
+# The deployment binaries are added during the deployment build process
+#
+
+# Binaries that don't get included in reduced jre image bin directory
+NOT_REDUCEDJRE_BIN = \
+ java_vm \
+ kinit \
+ klist \
+ ktab \
+ orbd \
+ policytool \
+ rmid \
+ rmiregistry \
+ servertool \
+ tnameserv \
+ pack200 \
+ unpack200
+
+# jars/resources/libs that don't get included in reduced jre image lib directory
+NOT_REDUCEDJRE_LIB = \
+ charsets.jar \
+ ext/dnsns.jar \
+ ext/localedata.jar \
+ $(LIBARCH)/client/classes.jsa \
+ $(LIBARCH)/libjavaplugin_jni.so \
+ $(LIBARCH)/libjavaplugin_nscp_gcc29.so \
+ $(LIBARCH)/libjavaplugin_nscp.so \
+ $(LIBARCH)/libjavaplugin_oji.so
+
+# JRE docs that don't get included in reduced jre image top directory
+NOT_REDUCEDJRE_DOC = \
+ Welcome.html
+
+reduced-image-jre::
+	@$(ECHO) Starting to Produce Reduced JRE
+	@#
+	@# First make a copy of the full JRE
+	@#
+	$(RM) -r $(JRE_REDUCED_IMAGE_DIR)
+	$(MKDIR) -p $(JRE_REDUCED_IMAGE_DIR)
+	$(CD) $(JRE_IMAGE_DIR); \
+	    $(TAR) cf - . | ($(CD) $(JRE_REDUCED_IMAGE_DIR); $(TAR) xf - ); 
+
+	@#
+	@# Remove all of the files that are not needed for the
+	@# reduced JRE
+	@#
+	for l in $(NOT_REDUCEDJRE_BIN) ; do \
+	    $(RM) $(JRE_REDUCED_IMAGE_DIR)/bin/$$l ; \
+	done
+	for l in $(NOT_REDUCEDJRE_LIB) ; do \
+	    $(RM) $(JRE_REDUCED_IMAGE_DIR)/lib/$$l ; \
+	done
+	for l in $(NOT_REDUCEDJRE_DOC) ; do \
+	    $(RM) $(JRE_REDUCED_IMAGE_DIR)/$$l ; \
+	done
+
+	@# Remove misc. other files
+	$(RM) -r $(JRE_REDUCED_IMAGE_DIR)/man
+	$(RM) -f $(JRE_REDUCED_IMAGE_DIR)/CHANGES
+
+	@$(ECHO) Done Creating Reduced JRE
+
+#
+# Produce a reduced Headless JRE
+#
+reduced-headless-image-jre:: $(RT_JAR) $(RESOURCES_JAR) $(BUILD_META_INDEX) $(HL_RT_JAR)
+	@$(ECHO) Starting to Produce Reduced Headless JRE
+	@#
+	@# First make a copy of the reduced JRE we just built
+	@#
+	$(RM) -r $(JRE_REDUCED_HEADLESS_IMAGE_DIR)
+	$(MKDIR) -p $(JRE_REDUCED_HEADLESS_IMAGE_DIR)
+	$(CD) $(JRE_REDUCED_IMAGE_DIR); \
+	    $(TAR) cf - . | ($(CD) $(JRE_REDUCED_HEADLESS_IMAGE_DIR); $(TAR) xf - ); 
+
+	@# Replace the full rt.jar with the headless rt.jar
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/rt.jar
+	$(CP) $(HL_RT_JAR) $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/rt.jar
+
+	@#
+	@# Remove all of the files that are not needed for the
+	@# reduced Headless JRE
+	@#
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/$(LIBARCH)/gtkhelper
+	$(RM)  $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/$(LIBARCH)/libjsoundalsa.so
+	$(RM) -r $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/audio
+	$(RM) -fr $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/applet
+	$(RM)  $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/$(LIBARCH)/awt_robot
+	$(RM)  $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/$(LIBARCH)/libawt_xawt.so
+	$(RM) -r $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/$(LIBARCH)/libsplashscreen.so
+	@# Remove oblique fonts and reduce font support to LucidaSansRegular only
+	$(RM) -fr $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/oblique-fonts
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaBrightDemiBold.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaBrightDemiItalic.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaBrightItalic.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaBrightRegular.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaSansDemiBold.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaTypewriterBold.ttf
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/LucidaTypewriterRegular.ttf
+
+ifeq ($(PLATFORM), linux)
+# put out minimal fonts.dir file for the remaining font
+	$(RM) -f $(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) 6>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-1">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-2">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-4">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-5">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-7">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+	$(ECHO) "LucidaSansRegular.ttf -b&h-lucidasans-medium-r-normal-sans-0-0-0-0-p-0-iso8859-9">>$(JRE_REDUCED_HEADLESS_IMAGE_DIR)/lib/fonts/fonts.dir
+
+endif # Linux
+
+	@#
+	@# all done with JRE reduced headless image
+	@#
+
+	@$(ECHO) Done Creating Reduced Headless JRE
+
+images-clobber::
+	$(RM) -r $(JRE_REDUCED_IMAGE_DIR)
+	$(RM) -r $(JRE_REDUCED_HEADLESS_IMAGE_DIR)
+
+.PHONY: reduced-image-jre reduced-headless-image-jre 
+
+endif # JAVASE_EMBEDDED
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Release-macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,75 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+MANBASEDIRS=$(JDK_TOPDIR)/src/bsd/doc $(IMPORTDOCDIR)
+MAN1SUBDIR = man
+JA_DIRNAME=ja_JP.UTF-8
+
+# Defines the release targets for Mac OS X build products
+
+JDK_BUNDLE_DIR = $(ABS_OUTPUTDIR)/j2sdk-bundle/$(THIS_JDK_VERSION).jdk/Contents
+JRE_BUNDLE_DIR = $(ABS_OUTPUTDIR)/j2re-bundle/$(THIS_JDK_VERSION).jre/Contents
+
+MACOSX_SRC	 = $(JDK_TOPDIR)/src/macosx
+
+BUNDLE_ID ?= net.java.openjdk
+BUNLDE_ID_JRE ?= $(BUNDLE_ID).jre
+BUNLDE_ID_JDK ?= $(BUNDLE_ID).jdk
+
+BUNDLE_NAME ?= OpenJDK $(JDK_MINOR_VERSION)
+BUNDLE_NAME_JRE ?= $(BUNDLE_NAME)
+BUNDLE_NAME_JDK ?= $(BUNDLE_NAME)
+
+BUNDLE_INFO ?= OpenJDK ($(JDK_VERSION))
+BUNDLE_INFO_JRE ?= $(BUNDLE_INFO)
+BUNDLE_INFO_JDK ?= $(BUNDLE_INFO)
+
+BUNDLE_PLATFORM_VERSION ?= $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION)
+BUNDLE_VERSION ?= $(JDK_VERSION)
+BUNDLE_VENDOR ?= UNDEFINED
+
+jre-bundle-setup:
+	$(RM) -r $(JRE_BUNDLE_DIR)
+
+jdk-bundle-setup:
+	$(RM) -r $(JDK_BUNDLE_DIR)
+
+jre-bundle-files:
+	$(MKDIR) -p $(JRE_BUNDLE_DIR)/MacOS
+	ln -s ../Home/lib/jli/libjli.dylib $(JRE_BUNDLE_DIR)/MacOS/
+	$(CP) -r $(JRE_IMAGE_DIR) $(JRE_BUNDLE_DIR)/Home
+	$(SED) -e "s/@@ID@@/$(BUNDLE_ID_JRE)/g" -e "s/@@NAME@@/$(BUNDLE_NAME_JRE)/g" -e "s/@@INFO@@/$(BUNDLE_INFO_JRE)/g" -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" < $(MACOSX_SRC)/bundle/JRE-Info.plist > $(JRE_BUNDLE_DIR)/Info.plist
+	/usr/bin/SetFile -a B $(JRE_BUNDLE_DIR)/../
+
+jdk-bundle-files:
+	$(MKDIR) -p $(JDK_BUNDLE_DIR)/MacOS
+	ln -s ../Home/jre/lib/jli/libjli.dylib $(JDK_BUNDLE_DIR)/MacOS/
+	$(CP) -r $(JDK_IMAGE_DIR) $(JDK_BUNDLE_DIR)/Home
+	$(SED) -e "s/@@ID@@/$(BUNDLE_ID_JDK)/g" -e "s/@@NAME@@/$(BUNDLE_NAME_JDK)/g" -e "s/@@INFO@@/$(BUNDLE_INFO_JDK)/g" -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" < $(MACOSX_SRC)/bundle/JDK-Info.plist > $(JDK_BUNDLE_DIR)/Info.plist
+	/usr/bin/SetFile -a B $(JDK_BUNDLE_DIR)/../
+
+EXTRA_IMAGE_TARGETS += jre-bundle-setup jdk-bundle-setup jre-bundle-files jdk-bundle-files
+
+.PHONY: $(EXTRA_JRE_TARGETS) $(EXTRA_IMAGE_TARGETS)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Release.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1301 @@
+#
+# Copyright (c) 1997, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include $(JDK_TOPDIR)/makefiles/docs/CORE_PKGS.gmk
+include $(JDK_TOPDIR)/makefiles/docs/NON_CORE_PKGS.gmk
+include $(JDK_TOPDIR)/makefiles/Tools.gmk
+
+# What jdk version are we building
+THIS_JDK_VERSION := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
+
+#
+# Perform release engineering tasks.
+#
+# images    An image is what the product looks like when it is
+#           installed.
+#
+
+IMAGE_BINDIR = bin
+
+# The compiler should not issue a "Proprietary" warning when compiling
+# classes in the com.sun.java.swing.plaf packages, since we've always
+# allowed, and even advocated, extending them (see bug 6476749).
+#
+# This approach is NOT to be used as a general purpose way to avoid such
+# compiler warnings for non-core packages. The correct way is to document
+# the packages in NON_CORE_PKGS.gmk, and include them in the NON_CORE_PKGS
+# definition.
+#
+# Swing has taken this approach only as a temporary measure to avoid
+# the compiler warnings until we can properly document these packages.
+# This is covered under 6491853.
+EXCLUDE_PROPWARN_PKGS = com.sun.java.swing.plaf.windows  \
+                        com.sun.java.swing.plaf.motif    \
+                        com.sun.java.swing.plaf.gtk
+
+#
+# Include the exported private packages in ct.sym.
+# This is an interim solution until the ct.sym is replaced
+# with a new module system (being discussed for JDK 8).
+#
+EXPORTED_PRIVATE_PKGS = com.sun.servicetag \
+                        com.oracle.net \
+                        com.oracle.nio
+
+# 64-bit solaris has a few special cases. We define the variable
+# SOLARIS64 for use in this Makefile to easily test those cases
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    SOLARIS64 = true
+    IMAGE_BINDIR = bin/$(ARCH)
+  endif
+endif
+
+JTG_DOCS            = $(JDK_TOPDIR)/src/solaris/doc
+
+ifeq ($(PLATFORM), macosx)
+  include $(JDK_TOPDIR)/make/common/Release-$(PLATFORM).gmk
+endif
+
+# The base names of all the license and document files for the jdk and jre
+#   (These files get placed in the jdk and jre install images)
+ifdef OPENJDK
+  # Where to find these files
+  SHARE_JDK_DOC_SRC = $(JDK_TOPDIR)
+  SHARE_JRE_DOC_SRC = $(JDK_TOPDIR)
+  # Same files for jdk and jre, no name changes
+  IMAGE_DOCLIST_JDK = LICENSE ASSEMBLY_EXCEPTION THIRD_PARTY_README
+  IMAGE_DOCLIST_JDK_DEMOS_AND_SAMPLES =
+  IMAGE_DOCLIST_JRE = LICENSE ASSEMBLY_EXCEPTION THIRD_PARTY_README
+else
+  # make/closed/common/Defs.gmk for closed location of SHARE_JDK_DOC_SRC
+
+  IMAGE_DOCLIST_JDK = COPYRIGHT README.html  LICENSE THIRDPARTYLICENSEREADME.txt
+  IMAGE_DOCLIST_JDK_DEMOS_AND_SAMPLES = demo/DEMOS_LICENSE sample/SAMPLES_LICENSE
+  IMAGE_DOCLIST_JRE = COPYRIGHT Welcome.html LICENSE THIRDPARTYLICENSEREADME.txt
+  ifeq ($(PLATFORM), windows)
+    IMAGE_DOCLIST_JRE += README.txt
+  else
+    IMAGE_DOCLIST_JRE += README
+  endif
+endif
+
+# Paths to these files we need
+JDK_DOCFILES   = $(IMAGE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
+JRE_DOCFILES   = $(IMAGE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
+JDK_DEMOS_AND_SAMPLES_DOCFILES = $(IMAGE_DOCLIST_JDK_DEMOS_AND_SAMPLES:%=$(JDK_IMAGE_DIR)/%)
+
+# absolute directory names: note, these must exist prior to build
+# time - they are created in the main Makefile.
+JRE_IMAGE_BINDIR   = $(JRE_IMAGE_DIR)/bin
+
+MAINMANIFEST  = $(JDK_TOPDIR)/make/tools/manifest.mf
+BEANMANIFEST  = $(JDK_TOPDIR)/make/javax/swing/beaninfo/manifest
+
+#
+# Man pages
+#
+
+JRE_MAN_PAGES =         \
+	java.1		\
+	keytool.1	\
+	orbd.1          \
+	pack200.1	\
+	policytool.1    \
+	rmid.1		\
+	rmiregistry.1	\
+	servertool.1    \
+	tnameserv.1     \
+	unpack200.1
+
+ifndef OPENJDK
+  JRE_MAN_PAGES += javaws.1
+endif
+
+JDK_MAN_PAGES =            \
+	$(JRE_MAN_PAGES)   \
+	appletviewer.1     \
+	extcheck.1         \
+	idlj.1             \
+	jar.1              \
+	jarsigner.1        \
+	javac.1            \
+	javadoc.1          \
+	javah.1            \
+	javap.1            \
+	jconsole.1         \
+	jdb.1              \
+	jhat.1             \
+        jinfo.1            \
+        jmap.1             \
+        jps.1              \
+	jrunscript.1       \
+        jsadebugd.1        \
+        jstack.1           \
+        jstat.1            \
+        jstatd.1           \
+	native2ascii.1     \
+	rmic.1             \
+        schemagen.1        \
+	serialver.1        \
+        wsgen.1            \
+        wsimport.1         \
+        xjc.1
+
+ifeq ($(PLATFORM), solaris)
+  MANBASEDIRS=$(JDK_TOPDIR)/src/solaris/doc $(IMPORTDOCDIR)
+  MAN1SUBDIR=sun/man/man1
+endif # solaris
+
+ifeq ($(PLATFORM), linux)
+  MANBASEDIRS=$(JDK_TOPDIR)/src/linux/doc $(IMPORTDOCDIR)
+  MAN1SUBDIR=man
+  JA_DIRNAME=ja_JP.UTF-8
+endif # linux
+
+define copy-man-pages
+$(MKDIR) -p $1/man/man1
+for manbase in $(MANBASEDIRS:%=%/$(MAN1SUBDIR)) ; do \
+  for manpage in $2; do \
+    if [ -f $${manbase}/$${manpage} ] ; then \
+      $(CP) $${manbase}/$${manpage} $1/man/man1 ; \
+      for ja_encoding in $(JA_TARGET_ENCODINGS); do \
+        ja_dir="ja"; \
+        if [ "$${ja_encoding}" != "$(JA_SOURCE_ENCODING)" ]; then \
+          ja_dir="ja_JP.$${ja_encoding}"; \
+	fi; \
+        $(MKDIR) -p $1/man/$${ja_dir}/man1; \
+        $(CAT) $${manbase}/ja/$${manpage} \
+          | $(NATIVE2ASCII) -encoding $(JA_SOURCE_ENCODING) \
+          | $(SED) 's/@@VERSION@@/$(THIS_JDK_VERSION)/g' \
+          | $(NATIVE2ASCII) -reverse -encoding $${ja_encoding} \
+            > $1/man/$${ja_dir}/man1/$${manpage}; \
+      done; \
+    fi; \
+  done; \
+done
+$(java-vm-cleanup)
+if [ "$(JA_DIRNAME)" != "" ] ; then \
+  $(CD) $1/man && $(RM) ja && $(LN) -s $(JA_DIRNAME) ja; \
+fi
+endef
+
+
+# no compression unless requested
+ifndef COMPRESS_JARS
+  CREATE_JAR_OPTS = c0mf
+  CREATE_JAR_OPTS_NOMANIFEST = c0f
+else
+  CREATE_JAR_OPTS = cmf
+  CREATE_JAR_OPTS_NOMANIFEST = cf
+endif
+
+#
+# Targets.
+#
+INITIAL_IMAGE_JRE=initial-image-jre
+INITIAL_IMAGE_JDK=initial-image-jdk
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    INITIAL_IMAGE_JRE=initial-image-jre-sol64
+    INITIAL_IMAGE_JDK=initial-image-jdk-sol64
+  endif
+endif
+
+images images-clobber \
+initial-image-jre initial-image-jdk \
+initial-image-jre-sol64 initial-image-jdk-sol64 \
+trim-image-jre trim-image-jdk \
+identify-image-jre identify-image-jdk \
+process-image-jre process-image-jdk \
+sec-files sec-files-win jgss-files ::
+	$(ECHO) ">>>Making "$@" @ `$(DATE)` ..."
+
+install: images
+
+# Order is important here, trim jre after jdk image is created
+ifeq ($(PLATFORM), macosx)
+
+images:: $(INITIAL_IMAGE_JRE) $(EXTRA_JRE_TARGETS) $(INITIAL_IMAGE_JDK) \
+	 trim-image-jre trim-image-jdk \
+     identify-image-jre identify-image-jdk \
+	 process-image-jre process-image-jdk sec-files sec-files-win jgss-files \
+	 $(EXTRA_IMAGE_TARGETS)
+else
+
+images:: $(INITIAL_IMAGE_JRE) $(INITIAL_IMAGE_JDK) \
+	 trim-image-jre trim-image-jdk \
+         identify-image-jre identify-image-jdk \
+	 process-image-jre process-image-jdk sec-files sec-files-win jgss-files 
+endif
+
+# Don't use these
+image-jre:: initial-image-jre trim-image-jre identify-image-jre process-image-jre
+image-jdk:: initial-image-jdk trim-image-jdk identify-image-jdk process-image-jdk
+
+#
+# Sources we ship in the SDK.
+#
+SOURCES = \
+	java/applet			\
+	java/awt			\
+	java/beans			\
+	java/io				\
+	java/lang			\
+	java/math			\
+	java/net			\
+	java/nio			\
+	java/rmi			\
+	java/security			\
+	java/sql			\
+	java/text			\
+	java/util			\
+	com/sun/corba			\
+	com/sun/image/codec/jpeg	\
+	com/sun/imageio                 \
+	com/sun/java/swing		\
+	com/sun/javadoc			\
+	com/sun/jmx			\
+	com/sun/source			\
+	com/sun/naming			\
+	com/sun/security/auth		\
+	com/sun/security/jgss		\
+	javax/accessibility		\
+	javax/annotation		\
+	javax/script			\
+	javax/imageio			\
+	javax/lang			\
+	javax/management		\
+	javax/naming			\
+	javax/print			\
+	javax/rmi			\
+	javax/security			\
+	javax/sound			\
+	javax/sql			\
+	javax/swing			\
+	javax/tools			\
+	javax/xml			\
+	com/sun/org/apache		\
+	com/sun/java_cup		\
+	com/sun/jlex	        	\
+	org/ietf			\
+	org/omg				\
+	org/w3c/dom			\
+	org/xml/sax			\
+	sunw
+#
+# Directories where sources may be found.  If a file with the same path
+# name exists in more than one of these places, the one found last on this
+# list wins.
+#
+SOURCE_DIRS = $(SHARE_SRC)/classes $(PLATFORM_SRC)/classes
+SOURCE_DIRS += $(GENSRCDIR)
+SOURCE_DIRS += $(IMPORTSRCDIR)
+SOURCE_DIRS += $(JDK_OUTPUTDIR)/gendocsrc_rmic
+ifndef OPENJDK
+  SOURCE_DIRS += $(CLOSED_SRC)/share/classes
+endif
+
+
+#
+# Specific files and directories that will be filtered out from above areas.
+#
+SOURCE_FILTERs = $(SCM_DIRs) ',*'
+SOURCE_FILES_filter = $(SOURCE_FILTERs:%=-name % -prune -o)
+
+#
+# Bug 4249883 - excluding some unnecessary packages from com.sun.tools
+#
+# Bug 5008685 - exclude jconsole from sun/tools
+#
+TOOLS = \
+	META-INF/services/com.sun.jdi.connect.Connector \
+	META-INF/services/com.sun.jdi.connect.spi.TransportService \
+	sun/tools/asm		\
+	sun/tools/jar		\
+	sun/tools/java		\
+	sun/tools/javac		\
+	sun/tools/jcmd		\
+	sun/tools/jps		\
+	sun/tools/jstat		\
+	sun/tools/jstatd	\
+	sun/tools/native2ascii	\
+	sun/tools/serialver	\
+	sun/tools/tree		\
+	sun/tools/util		\
+	sun/security/tools/JarBASE64Encoder.class \
+	sun/security/tools/JarSigner.class \
+	sun/security/tools/JarSignerParameters.class \
+	sun/security/tools/JarSignerResources.class \
+	sun/security/tools/JarSignerResources_ja.class \
+	sun/security/tools/JarSignerResources_zh_CN.class \
+	sun/security/tools/SignatureFile\$$Block.class \
+	sun/security/tools/SignatureFile.class \
+	sun/security/tools/TimestampedSigner.class \
+	sun/rmi/rmic		\
+	sun/applet		\
+	sun/jvmstat		\
+	com/sun/javadoc		\
+	com/sun/jdi		\
+	com/sun/jarsigner	\
+	com/sun/source          \
+	com/sun/tools/classfile \
+	com/sun/tools/doclets   \
+	com/sun/tools/example/debug/expr \
+	com/sun/tools/example/debug/tty  \
+	com/sun/tools/extcheck  \
+	com/sun/tools/hat       \
+	com/sun/tools/javac     \
+	com/sun/tools/javadoc   \
+	com/sun/tools/javah     \
+	com/sun/tools/javap     \
+	com/sun/tools/corba     \
+	com/sun/tools/internal/xjc       \
+	com/sun/tools/internal/ws       \
+	META-INF/services/com.sun.tools.internal.ws.wscompile.Plugin \
+	META-INF/services/com.sun.tools.internal.xjc.Plugin \
+	com/sun/istack/internal/tools       \
+	com/sun/tools/internal/jxc/ap   \
+	com/sun/tools/internal/ws/wscompile/plugin/at_generated \
+        com/sun/codemodel       \
+        com/sun/tools/internal/jxc             \
+        com/sun/xml/internal/rngom       \
+        com/sun/xml/internal/xsom       \
+        org/relaxng/datatype   \
+	com/sun/xml/internal/dtdparser \
+	com/sun/tools/jdi	\
+	com/sun/tools/script/shell	\
+	META-INF/services/com.sun.tools.attach.spi.AttachProvider \
+	com/sun/tools/attach	\
+	sun/tools/attach	\
+	sun/tools/jstack        \
+	sun/tools/jinfo         \
+	sun/tools/jmap
+
+# classes that go into jfr.jar
+JFR_CLASSES_DIRS= \
+	com/oracle/jrockit/jfr \
+	oracle/jrockit/jfr
+
+# classes that go into jsse.jar
+JSSE_CLASSES_DIRS = \
+	sun/security/provider/Sun.class \
+	sun/security/rsa/SunRsaSign.class \
+	sun/security/ssl \
+	com/sun/net/ssl/internal/ssl
+
+# classes that go into dnsns.jar
+DNS_CLASSES_DIRS = \
+        sun/net/spi/nameservice/dns \
+        META-INF/services/sun.net.spi.nameservice.NameServiceDescriptor
+
+# classes and files that go into localedata.jar
+LOCALEDATA_JAR_DIRS = \
+	sun/text/resources/*_ar* \
+	sun/text/resources/*_hi* \
+	sun/text/resources/*_iw* \
+	sun/text/resources/*_iw* \
+	sun/text/resources/*_ja* \
+	sun/text/resources/*_ko* \
+	sun/text/resources/*_th.* \
+	sun/text/resources/*_th_* \
+	sun/text/resources/*_vi* \
+	sun/text/resources/*_zh* \
+	sun/text/resources/*Data_th \
+	sun/text/resources/thai_dict \
+	sun/util/resources/*_ar* \
+	sun/util/resources/*_hi* \
+	sun/util/resources/*_iw* \
+	sun/util/resources/*_iw* \
+	sun/util/resources/*_ja* \
+	sun/util/resources/*_ko* \
+	sun/util/resources/*_th_* \
+	sun/util/resources/*_th.* \
+	sun/util/resources/*_vi* \
+	sun/util/resources/*_zh*
+
+LOCALEDATA_JAR_FILES = $(foreach i,$(LOCALEDATA_JAR_DIRS), $(wildcard $(CLASSBINDIR)/$i))
+
+# files under $(OUTPUTDIR) that need to go into sec-bin.zip for builds
+# where the corresponding sources are not available
+SEC_FILES_DIRS = \
+	classes/javax/net \
+	classes/javax/security/cert \
+	classes/com/sun/net/ssl \
+	classes/com/sun/security/cert \
+	classes/sun/net/www/protocol/https \
+	classes/sun/security/pkcs12 \
+	classes/sun/security/ssl \
+	classes/sun/security/krb5/*.class \
+	classes/sun/security/krb5/internal/*.class \
+	classes/sun/security/krb5/internal/ccache \
+	classes/sun/security/krb5/internal/crypto \
+	classes/sun/security/krb5/internal/ktab \
+	classes/sun/security/krb5/internal/rcache \
+	classes/sun/security/krb5/internal/util \
+	classes/sun/security/jgss/spi/GSSContextSpi.class
+
+# files under $(OUTPUTDIR) that need to go into sec-windows-win.zip for builds
+# where the corresponding sources are not available
+SEC_FILES_WIN_DIRS = \
+	classes/sun/security/krb5/internal/tools
+
+# files under $(BINDIR) that need to go into jgss_files.zip for builds
+# where the corresponding sources are not available
+JGSS_FILES_DIRS = \
+	bin/w2k_lsa_auth.dll \
+	bin/w2k_lsa_auth.map \
+	bin/w2k_lsa_auth.pdb
+
+# The following get removed from the SDK image.
+NOTJDKTOOLS = \
+	java_vm
+
+# The following get removed from the JRE after the bulk-copy of BINDIR...
+NOTJRETOOLS = \
+	appletviewer$(EXE_SUFFIX) \
+	extcheck$(EXE_SUFFIX) \
+	idlj$(EXE_SUFFIX) \
+	jar$(EXE_SUFFIX) \
+	jarsigner$(EXE_SUFFIX) \
+	java-rmi.cgi \
+	javac$(EXE_SUFFIX) \
+	javadoc$(EXE_SUFFIX) \
+	javah$(EXE_SUFFIX) \
+	javap$(EXE_SUFFIX) \
+	jcmd$(EXE_SUFFIX) \
+	jdb$(EXE_SUFFIX) \
+	jps$(EXE_SUFFIX) \
+	jrunscript$(EXE_SUFFIX) \
+	jstat$(EXE_SUFFIX) \
+	jstatd$(EXE_SUFFIX) \
+	jstack$(EXE_SUFFIX) \
+	packagebean$(SCRIPT_SUFFIX) \
+	rmic$(EXE_SUFFIX) \
+	serialver$(EXE_SUFFIX) \
+	unregbean$(EXE_SUFFIX) \
+	jconsole$(EXE_SUFFIX) \
+	jinfo$(EXE_SUFFIX) \
+	jmap$(EXE_SUFFIX) \
+	native2ascii$(EXE_SUFFIX) \
+	xjc$(EXE_SUFFIX) \
+	wsgen$(EXE_SUFFIX) \
+	wsimport$(EXE_SUFFIX) \
+        schemagen$(EXE_SUFFIX) \
+	jsadebugd$(EXE_SUFFIX) \
+	jhat$(EXE_SUFFIX)
+
+# The following get removed from the JRE after the bulk-copy of LIBDIR...
+NOTJRELIBS = tools.jar \
+        jconsole.jar
+
+ifeq ($(INCLUDE_SA), true)
+  NOTJRELIBS += sa-jdi.jar
+
+  # The following get removed from the JRE after the bulk-copy of LIBDIR...
+  NOTJRE_SHARED_LIBS = $(SALIB_NAME)
+else
+  NOTJRE_SHARED_LIBS =
+endif
+
+# Attach library is JDK only
+NOTJRE_SHARED_LIBS += $(LIB_PREFIX)attach.$(LIBRARY_SUFFIX)
+
+#
+###### RULES
+
+# Processing license files from source area to image area
+#    These will be modified to have the platform specific EOL chars.
+define process-doc-file
+$(prep-target)
+$(SED) 's/$$//g' $< > $@
+$(CHMOD) 444 $@
+endef
+
+# JDK files
+$(JDK_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
+	$(process-doc-file)
+
+$(JDK_IMAGE_DIR)/demo/DEMOS_LICENSE: $(SHARE_JDK_DOC_SRC)/DEMOS_LICENSE
+	$(process-doc-file)
+
+$(JDK_IMAGE_DIR)/sample/SAMPLES_LICENSE: $(SHARE_JDK_DOC_SRC)/SAMPLES_LICENSE
+	$(process-doc-file)
+
+# JRE files 
+$(JRE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
+	$(process-doc-file)
+ifeq ($(PLATFORM), windows)
+$(JRE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
+	$(process-doc-file)
+endif
+
+
+######################################################
+# List of directories in classes directory that should NOT be in rt.jar
+######################################################
+
+NOT_RT_JAR_LIST = $(IMAGES_OUTPUTDIR)/tmp/not_rt_jar.list
+
+$(NOT_RT_JAR_LIST): FRC
+	$(prep-target)
+	$(ECHO) "#\n" >> $@
+	$(ECHO) "# List of subdirectories not in include in rt.jar" >> $@
+	$(ECHO) "# Directories must contain trailing '/'." >> $@
+	$(ECHO) "com/sun/javadoc/" >> $@
+	$(ECHO) "com/sun/jdi/" >> $@
+	$(ECHO) "com/sun/jarsigner/" >> $@
+	$(ECHO) "com/sun/source/" >> $@
+	$(ECHO) "com/sun/istack/internal/tools/" >> $@
+	$(ECHO) "META-INF/services/com.sun.jdi.connect.Connector" >> $@
+	$(ECHO) "META-INF/services/com.sun.jdi.connect.spi.TransportService" >> $@
+	$(ECHO) "META-INF/services/com.sun.tools.xjc.Plugin" >> $@
+	$(ECHO) "com/sun/tools/" >> $@
+	$(ECHO) "sun/jvmstat/" >> $@
+	$(ECHO) "sun/nio/cs/ext/" >> $@
+	$(ECHO) "sun/awt/HKSCS.class" >> $@
+	$(ECHO) "sun/awt/motif/X11GB2312\$$Decoder.class" >> $@
+	$(ECHO) "sun/awt/motif/X11GB2312\$$Encoder.class" >> $@
+	$(ECHO) "sun/awt/motif/X11GB2312.class" >> $@
+	$(ECHO) "sun/awt/motif/X11GBK\$$Encoder.class" >> $@
+	$(ECHO) "sun/awt/motif/X11GBK.class" >> $@
+	$(ECHO) "sun/awt/motif/X11KSC5601\$$Decoder.class" >> $@
+	$(ECHO) "sun/awt/motif/X11KSC5601\$$Encoder.class" >> $@
+	$(ECHO) "sun/awt/motif/X11KSC5601.class" >> $@
+	$(ECHO) "sun/rmi/rmic/" >> $@
+	$(ECHO) "sun/tools/asm/" >> $@
+	$(ECHO) "sun/tools/java/" >> $@
+	$(ECHO) "sun/tools/javac/" >> $@
+	$(ECHO) "com/sun/tools/classfile/" >> $@
+	$(ECHO) "com/sun/tools/javap/" >> $@
+	$(ECHO) "sun/tools/jcmd/" >> $@
+	$(ECHO) "sun/tools/jconsole/" >> $@
+	$(ECHO) "sun/tools/jps/" >> $@
+	$(ECHO) "sun/tools/jstat/" >> $@
+	$(ECHO) "sun/tools/jstatd/" >> $@
+	$(ECHO) "sun/tools/native2ascii/" >> $@
+	$(ECHO) "sun/tools/serialver/" >> $@
+	$(ECHO) "sun/tools/tree/" >> $@
+	$(ECHO) "sun/tools/util/" >> $@
+	$(ECHO) "sun/security/tools/JarBASE64Encoder.class" >> $@
+	$(ECHO) "sun/security/tools/JarSigner.class" >> $@
+	$(ECHO) "sun/security/tools/JarSignerParameters.class" >> $@
+	$(ECHO) "sun/security/tools/JarSignerResources.class" >> $@
+	$(ECHO) "sun/security/tools/JarSignerResources_ja.class" >> $@
+	$(ECHO) "sun/security/tools/JarSignerResources_zh_CN.class" >> $@
+	$(ECHO) "sun/security/tools/SignatureFile\$$Block.class" >> $@
+	$(ECHO) "sun/security/tools/SignatureFile.class" >> $@
+	$(ECHO) "sun/security/tools/TimestampedSigner.class" >> $@
+	$(ECHO) "sun/security/provider/Sun.class" >> $@
+	$(ECHO) "sun/security/rsa/SunRsaSign.class" >> $@
+	$(ECHO) "sun/security/ssl/" >> $@
+	$(ECHO) "com/sun/net/ssl/internal/ssl/" >> $@
+	$(ECHO) "javax/crypto/" >> $@
+	$(ECHO) "sun/security/internal/" >> $@
+	$(ECHO) "com/sun/crypto/provider/" >> $@
+	$(ECHO) "META-INF/services/com.sun.tools.attach.spi.AttachProvider" >> $@
+	$(ECHO) "com/sun/tools/attach/" >> $@
+	$(ECHO) "org/relaxng/datatype/" >> $@
+	$(ECHO) "com/sun/codemodel/" >> $@
+	$(ECHO) "com/sun/xml/internal/dtdparser/" >> $@
+	$(ECHO) "com/sun/xml/internal/rngom/" >> $@
+	$(ECHO) "com/sun/xml/internal/xsom/" >> $@
+	$(ECHO) "com/sun/tools/script/shell/" >> $@
+	$(ECHO) "sun/tools/attach/" >> $@
+	$(ECHO) "sun/tools/jstack/" >> $@
+	$(ECHO) "sun/tools/jinfo/" >> $@
+	$(ECHO) "sun/tools/jmap/" >> $@
+	$(ECHO) "sun/net/spi/nameservice/dns/" >> $@
+	$(ECHO) "META-INF/services/sun.net.spi.nameservice.NameServiceDescriptor" >> $@
+	$(ECHO) $(patsubst $(CLASSBINDIR)/%,%,$(LOCALEDATA_JAR_FILES)) | sed 's/ /\n/g' >> $@
+ifndef OPENJDK
+ifndef JAVASE_EMBEDDED
+	$(ECHO) "com/oracle/jrockit/jfr/" >> $@
+	$(ECHO) "com/oracle/jrockit/jfr/client/" >> $@
+	$(ECHO) "com/oracle/jrockit/jfr/management/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/events/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/openmbean/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/parser/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/settings/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/tools/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/util/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/util/log/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/util/os/" >> $@
+	$(ECHO) "oracle/jrockit/jfr/util/text/" >> $@
+endif
+endif
+
+
+# File order list for rt.jar
+#     - sun.applet is included, till hotjava stops relying on it.
+#     - sun.tools.jar is included, needs cleanup.
+#
+REORDER_TEMPDIR=$(IMAGES_OUTPUTDIR)/tmp/reorder
+TOTAL_JAR_FILELIST=$(REORDER_TEMPDIR)/file_list
+
+JARFILELISTS_TEMPDIR=$(IMAGES_OUTPUTDIR)/tmp/jarfilelists
+RT_JAR_FILELIST=$(JARFILELISTS_TEMPDIR)/rt_jar_list
+RES_JAR_FILELIST=$(JARFILELISTS_TEMPDIR)/resources_jar_list
+
+$(TOTAL_JAR_FILELIST): $(BUILD_TOOLS) $(NOT_RT_JAR_LIST)
+	$(prep-target)
+	$(RM) $@.temp
+	($(CD) $(CLASSBINDIR) && \
+	    $(TOOL_JARREORDER) \
+		-o  $@.temp $(ABS_LIBDIR)/classlist $(NOT_RT_JAR_LIST) . )
+	$(MV) $@.temp $@
+	($(CD) $(CLASSBINDIR) && $(java-vm-cleanup))
+
+# Create the jfr.jar containing Java Flight Recorder implementation
+JFR_JAR=
+ifndef OPENJDK
+ifndef JAVASE_EMBEDDED
+JFR_JAR=$(ABS_TEMPDIR)/jfr-orig.jar
+$(JFR_JAR): $(OTHER_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \
+		$(JFR_CLASSES_DIRS) $(BOOT_JAR_JFLAGS)
+	@$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+endif
+endif
+
+# Create the rt.jar file list & non-class files list
+
+$(RT_JAR_FILELIST) + $(RES_JAR_FILELIST): \
+    $(TOTAL_JAR_FILELIST) $(BUILD_TOOLS)
+	$(RM) $(RT_JAR_FILELIST) $(RES_JAR_FILELIST)
+	$(MKDIR) -p $(JARFILELISTS_TEMPDIR)
+	$(TOOL_JARSPLIT) \
+		$(TOTAL_JAR_FILELIST) \
+		-o  $(RT_JAR_FILELIST) $(RES_JAR_FILELIST)
+	$(java-vm-cleanup)
+
+# Create the manifest file.
+RT_JAR_MANIFEST_FILE=$(IMAGES_OUTPUTDIR)/tmp/rt_manifest.tmp
+$(RT_JAR_MANIFEST_FILE): $(MAINMANIFEST) $(BEANMANIFEST)
+	$(prep-target)
+	$(SED) -e "s#@@RELEASE@@#$(RELEASE)#" 		\
+	       -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
+	       $(MAINMANIFEST) >> $@
+	$(ECHO) >> $@
+	$(CAT) $(BEANMANIFEST) >> $@
+
+OTHER_JAR_MANIFEST_FILE=$(IMAGES_OUTPUTDIR)/tmp/other_manifest.tmp
+$(OTHER_JAR_MANIFEST_FILE): $(MAINMANIFEST)
+	$(prep-target)
+	$(SED) -e "s#@@RELEASE@@#$(RELEASE)#" 		\
+	       -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
+	       $(MAINMANIFEST) >> $@
+
+# Create resources.jar containing non-class files
+RESOURCES_JAR=$(IMAGES_OUTPUTDIR)/tmp/resources-orig.jar
+$(RESOURCES_JAR): $(RES_JAR_FILELIST) $(OTHER_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \
+	        @$(RES_JAR_FILELIST) $(BOOT_JAR_JFLAGS)
+	$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+
+# Create jsse.jar containing SunJSSE implementation classes
+JSSE_JAR=$(IMAGES_OUTPUTDIR)/tmp/jsse-orig.jar
+$(JSSE_JAR): $(OTHER_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \
+		$(JSSE_CLASSES_DIRS) $(BOOT_JAR_JFLAGS)
+	@$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+
+# Create dnsns.jar 
+# Create without manifest for now to not differ with old buildsystem.
+DNS_JAR=$(IMAGES_OUTPUTDIR)/tmp/dns-orig.jar
+$(DNS_JAR): $(OTHER_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS_NOMANIFEST) $@ \
+		$(DNS_CLASSES_DIRS) $(BOOT_JAR_JFLAGS)
+	@$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+
+# Create localedata.jar containing localedata for non european languages
+LOCALEDATA_JAR=$(IMAGES_OUTPUTDIR)/localedata-orig.jar
+$(LOCALEDATA_JAR): $(LOCALEDATA_JAR_FILES)
+	$(prep-target)
+# Create without manifest for now to not differ with old buildsystem.
+#	$(CD) $(CLASSBINDIR) && \
+#	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \
+#	        $(LOCALEDATA_JAR_DIRS) $(BOOT_JAR_JFLAGS)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS_NOMANIFEST) $@ \
+	        $(LOCALEDATA_JAR_DIRS) $(BOOT_JAR_JFLAGS)
+	$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+
+# Create sec-bin.zip
+SEC_FILES_ZIP=$(IMAGES_OUTPUTDIR)/tmp/sec-bin.zip
+sec-files::
+	$(prep-target)
+	$(RM) $(SEC_FILES_ZIP)
+	$(CD) $(OUTPUTDIR) && \
+		$(ZIPEXE) -rq9 $(SEC_FILES_ZIP) $(SEC_FILES_DIRS)
+	$(java-vm-cleanup)
+
+# Create sec-windows-bin.zip
+SEC_FILES_WIN_ZIP=$(IMAGES_OUTPUTDIR)/tmp/sec-windows-bin.zip
+sec-files-win::
+ifeq ($(PLATFORM), windows)
+	$(prep-target)
+	$(RM) $(SEC_FILES_WIN_ZIP)
+	$(CD) $(OUTPUTDIR) && \
+		$(ZIPEXE) -rq9 $(SEC_FILES_WIN_ZIP) $(SEC_FILES_WIN_DIRS)
+	$(java-vm-cleanup)
+endif
+
+# Create JGSS files that contains the native Kerberos library
+JGSS_WIN32_FILES_ZIP=$(IMAGES_OUTPUTDIR)/tmp/jgss-windows-i586-bin.zip
+JGSS_WIN64_FILES_ZIP=$(IMAGES_OUTPUTDIR)/tmp/jgss-windows-x64-bin.zip
+jgss-files::
+ifeq ($(PLATFORM), windows)
+	$(prep-target)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+	$(RM) $(JGSS_WIN32_FILES_ZIP)
+	$(CD) $(OUTPUTDIR) && \
+		$(ZIPEXE) -rq9 $(JGSS_WIN32_FILES_ZIP) $(JGSS_FILES_DIRS)
+  else
+	$(RM) $(JGSS_WIN64_FILES_ZIP)
+	$(CD) $(OUTPUTDIR) && \
+		$(ZIPEXE) -rq9 $(JGSS_WIN64_FILES_ZIP) $(JGSS_FILES_DIRS)
+  endif
+	$(java-vm-cleanup)
+endif
+
+# Create rt.jar
+RT_JAR=$(IMAGES_OUTPUTDIR)/tmp/rt-orig.jar
+$(RT_JAR): $(RT_JAR_FILELIST) $(RT_JAR_MANIFEST_FILE)
+	$(prep-target)
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(RT_JAR_MANIFEST_FILE) $@ \
+	        @$(RT_JAR_FILELIST) $(BOOT_JAR_JFLAGS)
+	$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+
+# SE-Embedded targets if enabled
+include $(JDK_TOPDIR)/makefiles/common/Release-embedded.gmk
+
+
+######################################################
+# JRE Image
+######################################################
+
+initial-image-jre-setup:
+	$(RM) -r $(JRE_IMAGE_DIR)
+	$(MKDIR) -p $(JRE_IMAGE_DIR)
+
+# 64-bit solaris jre image contains only the 64-bit add-on files.
+initial-image-jre-sol64:: initial-image-jre-setup
+	@# Use tar instead of cp to preserve the symbolic links
+	for dir in bin lib ; do \
+	  ( $(CD) $(OUTPUTDIR) && \
+		$(TAR) cf - `$(FIND) $$dir -name '$(ARCH)' -print` | \
+		($(CD) $(JRE_IMAGE_DIR) && $(TAR) xf -) ) ; \
+	done
+	@# Remove some files from the jre area
+	for t in $(NOTJRETOOLS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
+	done
+	for l in $(NOTJRELIBS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/lib/$$l ; \
+	done
+	$(RM) `$(FIND) $(JRE_IMAGE_DIR)/lib -name 'orb.idl'`
+	$(RM) `$(FIND) $(JRE_IMAGE_DIR)/lib -name 'ir.idl'`
+
+# Construct an initial jre image (initial jdk jre) no trimming or stripping
+# See "initial-image-jdk-setup" for an explanation of the rm of
+# drive names like C:
+initial-image-jre:: initial-image-jre-setup \
+		    $(JRE_DOCFILES) \
+		    $(RT_JAR) $(RESOURCES_JAR) $(JSSE_JAR) $(JFR_JAR) $(DNS_JAR) $(LOCALEDATA_JAR) \
+		    $(BUILD_TOOLS)
+	@# Copy in bin directory
+	$(CD) $(OUTPUTDIR) && $(FIND) bin -depth | $(CPIO) -pdum $(JRE_IMAGE_DIR)
+	@# CTE plugin security change require new empty directory lib/applet
+	$(MKDIR) -p $(JRE_IMAGE_DIR)/lib/applet
+	@# Copy in lib directory
+	$(CD) $(OUTPUTDIR) && $(FIND) lib -depth | $(CPIO) -pdum $(JRE_IMAGE_DIR)
+  ifeq ($(USING_CYGWIN),true)
+	  $(RM) -rf $(JRE_IMAGE_DIR)/[A-Za-z]:
+	  $(RM) -rf $(OUTPUTDIR)/[A-Za-z]:
+  endif
+	@# Make sure all directories are read/execute for everyone
+	$(CHMOD) a+rx `$(FIND) $(JRE_IMAGE_DIR) -type d`
+	@# Remove some files from the jre area
+	for t in $(NOTJRETOOLS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/bin$(ISA_DIR)/$$t ; \
+	done
+	for l in $(NOTJRELIBS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/lib/$$l ; \
+	done
+	@# Remove orb.idl and ir.idl from jre
+	$(FIND) $(JRE_IMAGE_DIR)/lib -name 'orb.idl' -exec $(RM) \{} \;
+	$(FIND) $(JRE_IMAGE_DIR)/lib -name 'ir.idl' -exec $(RM) \{} \;
+	@# Copy in rt.jar & resources.jar file
+	$(CP) $(RT_JAR) $(JRE_IMAGE_DIR)/lib/rt.jar
+	$(CP) $(RESOURCES_JAR) $(JRE_IMAGE_DIR)/lib/resources.jar
+	$(CP) $(JSSE_JAR) $(JRE_IMAGE_DIR)/lib/jsse.jar
+ifneq ($(JFR_JAR),)
+	$(CP) $(JFR_JAR) $(JRE_IMAGE_DIR)/lib/jfr.jar
+endif
+	$(CP) $(DNS_JAR) $(JRE_IMAGE_DIR)/lib/ext/dnsns.jar
+	$(CP) $(LOCALEDATA_JAR) $(JRE_IMAGE_DIR)/lib/ext/localedata.jar
+	@# Generate meta-index to make boot and extension class loaders lazier
+	$(CD) $(JRE_IMAGE_DIR)/lib && \
+	    $(TOOL_BUILDMETAINDEX) \
+		-o meta-index *.jar
+	$(CD) $(JRE_IMAGE_DIR)/lib && $(java-vm-cleanup)
+	$(CD) $(JRE_IMAGE_DIR)/lib/ext && \
+	    $(TOOL_BUILDMETAINDEX) \
+		-o meta-index *.jar
+	$(CD) $(JRE_IMAGE_DIR)/lib/ext && $(java-vm-cleanup)
+ifeq ($(PLATFORM), macosx)
+	@#install jobjc, apple mac only
+	$(CP) $(OUTPUTDIR)/JObjC.build/JObjC.jar $(JRE_IMAGE_DIR)/lib/JObjC.jar
+endif
+ifeq ($(PLATFORM), windows)
+	@# Remove certain *.lib files
+	$(CD) $(JRE_IMAGE_DIR)/lib && \
+            $(RM) java.$(LIB_SUFFIX) jvm.$(LIB_SUFFIX) \
+                  awt.$(LIB_SUFFIX) jawt.$(LIB_SUFFIX)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+	@# The Java Kernel JRE image ships with a special VM.  It is not included
+	@# in the full JRE image, so remove it.  Also, is it only for 32-bit windows.
+	$(CD) $(JRE_IMAGE_DIR)/bin && $(RM) -r kernel
+  endif
+endif # Windows
+ifneq ($(PLATFORM), windows)
+	$(call copy-man-pages,$(JRE_IMAGE_DIR),$(JRE_MAN_PAGES))
+endif # !windows
+
+# Trim out any extra files not for the jre shipment but wanted in the jdk jre.
+#   (Note the jdk WILL want the jre image before this trimming)
+#   Removes server VM on Windows 32bit.
+#   Remove certain shared libraries that should not be in the jre image
+#      but should be in the jdk jre image.
+trim-image-jre::
+	@# Clean out all _the. files.
+	$(FIND) $(JRE_IMAGE_DIR) -name "_the.*" $(FIND_DELETE)
+ifeq ($(PLATFORM), windows)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+	$(RM) -r $(JRE_IMAGE_DIR)/bin/server
+  endif
+  ifdef NOTJRE_SHARED_LIBS
+	for l in $(NOTJRE_SHARED_LIBS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/bin/$$l ; \
+	done ;
+  endif
+else # PLATFORM
+  ifdef NOTJRE_SHARED_LIBS
+	for l in $(NOTJRE_SHARED_LIBS) ; do \
+	    $(RM) $(JRE_IMAGE_DIR)/lib/$(LIBARCH)/$$l ; \
+	done ;
+  endif
+endif # PLATFORM
+
+# Get list of all binary (COFF or Elf) files in the jre
+JRE_BIN_LIST=$(TEMPDIR)/jre-bin-files.list
+$(JRE_BIN_LIST):
+	$(RM) $@
+ifeq ($(PLATFORM), windows)
+	$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*.exe \
+	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" > $@
+else
+	$(FIND) $(JRE_IMAGE_DIR)/lib -type f -name \*.$(LIB_SUFFIX) >> $@
+	$(FILE) `$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+endif
+
+# Post process the image (strips and mcs on Elf files we are shipping)
+#   (Note the jdk WILL want the jre image before this processing)
+process-image-jre:: $(JRE_BIN_LIST)
+ifneq ($(POST_STRIP_PROCESS), )
+	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
+	  $(POST_STRIP_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+ifneq ($(POST_MCS_PROCESS), )
+	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
+	  $(POST_MCS_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
+	  $(call binary_file_verification,$${f}); \
+	done
+	$(RM) $(JRE_BIN_LIST)
+
+######################################################
+# JDK Image
+######################################################
+# Note: cpio ($(CPIO)) sometimes leaves directories without rx access.
+
+# REMIND: the $(RM) calls for patterns like c:, d: following $(CPIO)
+# are because the 1.7.x versions of cygwin's cpio command drops these
+# in the working directory if the output path begins with that pattern
+# The one for the output jre subdirectory gets there because cpio sees its
+# own dropping in the input jre subdirectory. Need to remove both of these.
+# We can remove these RM's if someone figures out how to stop cpio from
+# leaving these there.
+# Note that its a real problem not because this directory can end up in the
+# bundle (I think it won't since it not in bin or lib and those are the
+# only places from which we copy everything), but because the presence
+# of this file causes cygwin's find to bomb out, thus breaking the build
+# in "install".
+initial-image-jdk-setup:
+	$(RM) -r $(JDK_IMAGE_DIR)
+	$(MKDIR) -p $(JDK_IMAGE_DIR)/jre
+	($(CD) $(JRE_IMAGE_DIR) && $(FIND) . -depth -print \
+	      | $(CPIO) -pdum $(JDK_IMAGE_DIR)/jre )
+  ifeq ($(USING_CYGWIN),true)
+	  $(RM) -rf $(JRE_IMAGE_DIR)/[A-Za-z]:
+	  $(RM) -rf $(JDK_IMAGE_DIR)/jre/[A-Za-z]:
+  endif
+	$(RM) -rf $(JDK_IMAGE_DIR)/jre/man
+	$(CHMOD) a+rx `$(FIND) $(JDK_IMAGE_DIR) -type d`
+
+initial-image-jdk64-bindemos:
+	for dir in bin demo ; do \
+	  ( $(CD) $(OUTPUTDIR) && \
+		$(TAR) cf - `$(FIND) $$dir -name '$(LIBARCH)' -print` | \
+		($(CD) $(JDK_IMAGE_DIR) && $(TAR) xf -) ) ; \
+        done
+
+# Solaris 64 bit image is special
+initial-image-jdk-sol64:: initial-image-jdk-setup \
+			  initial-image-jdk64-bindemos
+
+# DB files to add
+ifdef OPENJDK
+
+initial-image-jdk-db:
+
+else
+
+# Create the list of db *.zip files to bundle with jdk
+ABS_DB_PATH  :=$(call FullPath,$(CLOSED_SHARE_SRC)/db)
+DB_ZIP_LIST := $(shell $(LS) $(ABS_DB_PATH)/*.zip 2>/dev/null)
+# Can't have : in these file names as they are used in a rule
+# below.
+ifdef USING_CYGWIN
+    DB_ZIP_LIST:=$(shell $(CYGPATH) -a -u $(DB_ZIP_LIST))
+endif
+
+# Java DB image. Move the Java DB demo directory into the JDK's demo
+# dir and in the process, rename it to db.  Also remove index.html,
+# since it presumes docs are co-located. Also remove register.html (no
+# longer relevant).
+initial-image-jdk-db: $(DB_ZIP_LIST)
+	$(MKDIR) -p $(JDK_IMAGE_DIR)/db
+	for d in $(DB_ZIP_LIST); do \
+          ($(CD) $(JDK_IMAGE_DIR)/db && $(UNZIP) -o $$d); \
+	done
+	$(CP) $(ABS_DB_PATH)/README-JDK.html $(JDK_IMAGE_DIR)/db
+ifndef NO_DEMOS
+	$(RM) -rf $(NEWDEMODIR)/db
+	$(MV) $(JDK_IMAGE_DIR)/db/demo $(NEWDEMODIR)/db
+	$(CP) $(ABS_DB_PATH)/README-JDK-DEMOS.html $(NEWDEMODIR)/db/
+else
+	$(RM) -rf $(JDK_IMAGE_DIR)/db/demo
+endif
+	$(RM) $(JDK_IMAGE_DIR)/db/index.html $(JDK_IMAGE_DIR)/db/register.html
+endif
+
+# The launcher source files we need for src.zip
+FILES_launcher = $(wildcard $(SHARE_SRC)/bin/*) \
+                 $(wildcard $(PLATFORM_SRC)/bin/java_md*)
+
+# Standard jdk image
+initial-image-jdk:: initial-image-jdk-setup \
+		    initial-image-jdk-db \
+		    $(JDK_DOCFILES) \
+		    $(JDK_DEMOS_AND_SAMPLES_DOCFILES)
+	$(MKDIR) $(JDK_IMAGE_DIR)/lib
+	@#
+	@# Copy in the jars in lib that only belong in the JDK
+	@#
+	for l in $(NOTJRELIBS); do \
+	    if [ -r $(LIBDIR)/$$l ]; then \
+	        $(CP) $(LIBDIR)/$$l $(JDK_IMAGE_DIR)/lib; \
+	    fi; \
+	done
+  ifeq ($(PLATFORM), windows)
+	@#
+	@# lib/
+	@#
+	$(CP) $(LIBDIR)/$(LIB_PREFIX)jvm.$(LIB_SUFFIX) $(JDK_IMAGE_DIR)/lib
+	$(CP) $(LIBDIR)/$(LIB_PREFIX)jawt.$(LIB_SUFFIX) $(JDK_IMAGE_DIR)/lib
+	@#
+	@# bin/
+	@#
+	@# copy all EXE files and only certain DLL files from BINDIR
+	$(MKDIR) -p $(JDK_IMAGE_DIR)/bin
+	$(CP) $(BINDIR)/*$(EXE_SUFFIX) $(JDK_IMAGE_DIR)/bin
+	$(CP) $(BINDIR)/jli.$(LIBRARY_SUFFIX) $(JDK_IMAGE_DIR)/bin
+    ifeq ($(COMPILER_VERSION), VS2010)
+	$(CP) $(BINDIR)/msvc*100.$(LIBRARY_SUFFIX) $(JDK_IMAGE_DIR)/bin
+    endif
+  else # PLATFORM
+	@#
+	@# bin/
+	@#
+	($(CD) $(BINDIR)/.. && $(TAR) cf - \
+	    `$(FIND) bin \( -type f -o -type l \) -print `) | \
+	    ($(CD) $(JDK_IMAGE_DIR) && $(TAR) xf -)
+  endif # PLATFORM
+	@#
+	@# lib/tools.jar
+	@#
+	$(MKDIR) -p $(IMAGES_OUTPUTDIR)/lib
+	$(CD) $(CLASSBINDIR) && \
+	    $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS_NOMANIFEST) $(IMAGES_OUTPUTDIR)/lib/tools.jar \
+	        $(TOOLS) $(BOOT_JAR_JFLAGS)
+	$(CD) $(CLASSBINDIR) && $(java-vm-cleanup)
+	$(CP) $(IMAGES_OUTPUTDIR)/lib/tools.jar $(JDK_IMAGE_DIR)/lib/tools.jar
+	@#
+	@# lib/ct.sym
+	@#
+	$(MKDIR) -p $(IMAGES_OUTPUTDIR)/symbols/META-INF/sym
+	$(BOOT_JAVA_CMD) \
+		-Xbootclasspath/p:$(JAVAC_JAR) \
+		-Xbootclasspath/a:$(JDK_OUTPUTDIR)/classes \
+		-jar $(JAVAC_JAR) $(JAVACFLAGS) \
+	    -XDprocess.packages -proc:only \
+	    -processor com.sun.tools.javac.sym.CreateSymbols \
+	    -Acom.sun.tools.javac.sym.Jar=$(RT_JAR) \
+	    -Acom.sun.tools.javac.sym.Dest=$(IMAGES_OUTPUTDIR)/symbols/META-INF/sym/rt.jar \
+	    $(CORE_PKGS) $(NON_CORE_PKGS) $(EXCLUDE_PROPWARN_PKGS) $(EXPORTED_PRIVATE_PKGS)
+	$(BOOT_JAR_CMD) $(CREATE_JAR_OPTS_NOMANIFEST) $(IMAGES_OUTPUTDIR)/lib/ct.sym \
+	    -C $(IMAGES_OUTPUTDIR)/symbols META-INF $(BOOT_JAR_JFLAGS)
+	$(java-vm-cleanup)
+	$(CP) $(IMAGES_OUTPUTDIR)/lib/ct.sym $(JDK_IMAGE_DIR)/lib/ct.sym
+	@#
+	@# CORBA supported orb.idl and ir.idl should be copied to lib
+	@#
+	$(CP) $(LIBDIR)/orb.idl $(JDK_IMAGE_DIR)/lib/orb.idl
+	$(CP) $(LIBDIR)/ir.idl $(JDK_IMAGE_DIR)/lib/ir.idl
+  ifeq ($(PLATFORM), linux)
+	@#
+	@# on Linux copy jexec from jre/lib to /lib
+	@#
+	$(CP) $(LIBDIR)/jexec $(JDK_IMAGE_DIR)/lib/jexec
+  endif # PLATFORM
+	@#
+	@# src.zip
+	@#
+	$(MKDIR) -p $(JDK_IMAGE_DIR)/src
+	@#
+	@# The '*-*' pattern in the find command excludes files named with dashes,
+	@# such as the java.nio templates for generated classes
+	@#
+	@# The Linux 'tar' command cannot handle the huge command line argument
+	@# generated by the more efficient solaris/windows method of copying files.
+	@# So for Linux, make use of the -T option (like Solaris' -I option) of
+	@# obtaining the list of files from a file. MKS tar has no such option.
+
+  ifneq (,$(findstring $(PLATFORM), linux macosx))
+	for d in $(SOURCE_DIRS); do \
+	  $(RM) $(IMAGES_OUTPUTDIR)/tmp/src-files.list; \
+	  ($(CD) $$d &&  \
+	    for sd in $(SOURCES) ; do \
+              if [ -d $$sd ] ; then \
+	        $(FIND) $$sd $(SOURCE_FILES_filter) \
+		        -name '*.java' -print \
+		        >> $(IMAGES_OUTPUTDIR)/tmp/src-files.list ; \
+	      fi; \
+	    done ; \
+	  ) ; \
+	  if [ -f  $(IMAGES_OUTPUTDIR)/tmp/src-files.list ] ; then \
+	    ($(CD) $$d && $(TAR) cf - -T $(IMAGES_OUTPUTDIR)/tmp/src-files.list ) \
+	       | ($(CD) $(JDK_IMAGE_DIR)/src && $(TAR) xf -); \
+	  fi; \
+	done
+  else
+	for d in $(SOURCE_DIRS); do \
+	  $(RM) $(IMAGES_OUTPUTDIR)/tmp/src-files.list; \
+	  ($(CD) $$d && \
+	    for sd in $(SOURCES) ; do \
+              if [ -d $$sd ] ; then \
+	        $(FIND) $$sd $(SOURCE_FILES_filter) \
+		        -name '*.java' -print \
+		        >> $(IMAGES_OUTPUTDIR)/tmp/src-files.list ; \
+	      fi; \
+	    done ; \
+	  ) ; \
+	  if [ -f  $(IMAGES_OUTPUTDIR)/tmp/src-files.list ] ; then \
+	    ($(CD) $$d && $(TAR) cf - `$(CAT) $(IMAGES_OUTPUTDIR)/tmp/src-files.list`) \
+	      | ($(CD) $(JDK_IMAGE_DIR)/src && $(TAR) xf -); \
+	  fi; \
+	done
+  endif
+	$(RM) $(IMAGES_OUTPUTDIR)/tmp/src-files.list
+	$(CHMOD) -R +w $(JDK_IMAGE_DIR)/src
+	$(MKDIR) -p $(JDK_IMAGE_DIR)/src/launcher
+	$(CP) $(FILES_launcher) $(JDK_IMAGE_DIR)/src/launcher
+	$(CD) $(JDK_IMAGE_DIR)/src && $(ZIPEXE) -qr ../src.zip *
+	$(RM) -r $(JDK_IMAGE_DIR)/src
+	@#
+	@# demo, include
+	@#
+ifndef NO_DEMOS
+	mkdir -p $(JDK_IMAGE_DIR)/demo
+	$(CP) -r -f $(NEWDEMODIR)/* $(JDK_IMAGE_DIR)/demo
+	$(FIND) $(JDK_IMAGE_DIR)/demo -name "_the.*" $(FIND_DELETE)
+endif
+ifndef NO_SAMPLES
+	$(CP) -r -f $(SAMPLEDIR) $(JDK_IMAGE_DIR)
+endif
+	$(CP) -r $(INCLUDEDIR) $(JDK_IMAGE_DIR)
+	@#
+	@# Swing BeanInfo generation
+	@#
+	$(CD) javax/swing/beaninfo && $(MAKE) TEMPDIR=$(IMAGES_OUTPUTDIR)/tmp ABS_TEMPDIR=$(IMAGES_OUTPUTDIR)/tmp swing-1.2-beans
+ifneq ($(PLATFORM), windows)
+	$(call copy-man-pages,$(JDK_IMAGE_DIR),$(JDK_MAN_PAGES))
+endif # !windows
+
+# Trim out files we don't want to ship
+trim-image-jdk::
+	@# Clean out all _the. files.
+	$(FIND) $(JDK_IMAGE_DIR) -name "_the.*" $(FIND_DELETE)
+	@# Remove tools that should not be part of SDK.
+	for t in $(NOTJDKTOOLS); do \
+	    $(RM) $(JDK_IMAGE_DIR)/bin/$${t}$(EXE_SUFFIX); \
+	done
+
+# Get list of binary (COFF or Elf) files in the jdk
+JDK_BIN_LIST=$(TEMPDIR)/jdk-bin-files.list
+$(JDK_BIN_LIST):
+ifeq ($(PLATFORM), windows)
+	$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*.exe \
+	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" > $@
+	$(FIND) $(JDK_IMAGE_DIR)/bin -type f -name \*.exe \
+	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" >> $@
+else
+	$(RM) $@
+	$(FIND) $(JDK_IMAGE_DIR)/jre/lib -type f -name \*.$(LIB_SUFFIX) >> $@
+	$(FILE) `$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+	$(FILE) `$(FIND) $(JDK_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
+	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
+endif
+
+# Post process the image (strips and mcs on files we are shipping)
+process-image-jdk:: $(JDK_BIN_LIST)
+ifneq ($(POST_STRIP_PROCESS), )
+	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
+	  $(POST_STRIP_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+ifneq ($(POST_MCS_PROCESS), )
+	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
+	  $(CHMOD) u+w $${f}; \
+	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
+	  $(POST_MCS_PROCESS) $${f}; \
+	  $(CHMOD) go-w $${f}; \
+	done
+endif
+	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
+	  $(call binary_file_verification,$${f}); \
+	done
+	$(RM) $(JDK_BIN_LIST)
+
+###################################################################
+# What did we build
+###################################################################
+
+# The jdk text info file that lives at the root of the install image.
+
+JDK_INFO_FILE = $(JDK_IMAGE_DIR)/release
+JRE_INFO_FILE = $(JRE_IMAGE_DIR)/release
+
+# Common way to emit a line into the release or info file
+define info-file-item # name value
+$(PRINTF) '%s="%s"\n' $1 $2 >> $@
+endef
+
+# Values to emit
+MINIMUM_OS_NAME    := $(REQUIRED_OS_NAME)
+MINIMUM_OS_VERSION := $(REQUIRED_OS_VERSION)
+MINIMUM_OS_ARCH    := $(ARCH)
+ALL_SOURCE_TIPS     = $(shell \
+  if [ -f $(SOURCE_TIPS) ] ; then \
+    $(CAT) $(SOURCE_TIPS) ; \
+  fi)
+
+$(JDK_INFO_FILE): FRC
+	$(prep-target)
+	$(call info-file-item, "JAVA_VERSION", "$(THIS_JDK_VERSION)")
+	$(call info-file-item, "OS_NAME",      "$(MINIMUM_OS_NAME)")
+	$(call info-file-item, "OS_VERSION",   "$(MINIMUM_OS_VERSION)")
+	$(call info-file-item, "OS_ARCH",      "$(MINIMUM_OS_ARCH)")
+	$(call info-file-item, "SOURCE",       "$(ALL_SOURCE_TIPS)")
+
+# Create release file to identify this image
+identify-image-jdk:: $(JDK_INFO_FILE)
+
+$(JRE_INFO_FILE): FRC
+	$(prep-target)
+	$(call info-file-item, "JAVA_VERSION", "$(THIS_JDK_VERSION)")
+	$(call info-file-item, "OS_NAME",      "$(MINIMUM_OS_NAME)")
+	$(call info-file-item, "OS_VERSION",   "$(MINIMUM_OS_VERSION)")
+	$(call info-file-item, "OS_ARCH",      "$(MINIMUM_OS_ARCH)")
+	$(call info-file-item, "SOURCE",       "$(ALL_SOURCE_TIPS)")
+
+# Create release file to identify this image
+identify-image-jre:: $(JRE_INFO_FILE)
+
+images images-clobber::
+	$(ECHO) ">>>Finished making "$@" @ `$(DATE)` ..."
+	$(java-vm-cleanup)
+
+.PHONY: images image-jre image-jdk \
+	initial-image-jre initial-image-jdk \
+	initial-image-jre-sol64 initial-image-jdk-sol64 \
+        initial-image-jdk-setup \
+	initial-image-jdk-db \
+        initial-image-jdk64-bindemos \
+        initial-image-jre-setup \
+	trim-image-jre trim-image-jdk \
+	process-image-jre process-image-jdk \
+	identify-image-jre identify-image-jdk \
+	images-clobber
+
+# Force rule
+FRC:
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Rules.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,357 @@
+#
+# Copyright (c) 1995, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+#
+# Rules shared by all Java makefiles.
+#
+# Used to apply to source file $<, checks code conventions, issues warnings.
+define check-conventions
+  if [ "$(CONVENTION_WATCH)" = "true" ] ; then \
+    if [ "`$(CAT) -n -v -t $< | $(EGREP) -v '\@\(\#\)' | $(EGREP) '\^[MLI]'`" != "" ] ; then \
+      $(ECHO) "WARNING: File contains tabs, ^M, or ^L characters: $<"; \
+      if [ "$(CONVENTION_DETAILS)" = "true" ] ; then \
+        $(CAT) -n -v -t $< | $(EGREP) -v '\@\(\#\)' | $(EGREP) '\^[MLI]' ; \
+      fi; \
+    fi; \
+  fi
+endef
+
+# Make sure the default rule is all
+rules_default_rule: all
+
+#
+# Directory set up.  (Needed by deploy workspace)
+# 
+$(CLASSDESTDIR) $(CLASSHDRDIR) $(OBJDIR) $(OUTPUTDIR) $(BINDIR) $(LIBDIR) $(LIBDIR)/$(LIBARCH) $(TEMPDIR) $(EXTDIR):
+	$(MKDIR) -p $@ 
+
+#
+# All source tree areas for java/properties files (a few may be closed)
+#
+ifeq ($(PLATFORM), macosx)
+  ifdef OPENJDK
+    ALL_CLASSES_SRC = $(call JavaSrcDirList,,classes)
+  else
+    ALL_CLASSES_SRC = \
+	  $(CLOSED_SHARE_SRC)/classes $(CLOSED_PLATFORM_SRC)/classes \
+	  $(call JavaSrcDirList,,classes)
+  endif
+else
+  ifdef OPENJDK
+    ALL_CLASSES_SRC = $(SHARE_SRC)/classes $(PLATFORM_SRC)/classes
+  else
+    ALL_CLASSES_SRC = \
+	  $(CLOSED_SHARE_SRC)/classes $(CLOSED_PLATFORM_SRC)/classes \
+	  $(SHARE_SRC)/classes $(PLATFORM_SRC)/classes
+  endif
+endif
+
+#
+# If AUTO_FILES_PROPERTIES_DIRS used, automatically find properties files
+#
+ifdef AUTO_FILES_PROPERTIES_DIRS
+  AUTO_FILES_PROPERTIES_FILTERS1  = $(SCM_DIRs) ',*'
+  AUTO_FILES_PROPERTIES_FILTERS1 += $(AUTO_PROPERTIES_PRUNE)
+  FILES_properties_find_filters1 = $(AUTO_FILES_PROPERTIES_FILTERS1:%=-name % -prune -o)
+  FILES_properties_auto1 := \
+     $(shell \
+        for dir in $(ALL_CLASSES_SRC) ; do \
+          if [ -d $$dir ] ; then \
+            ( $(CD) $$dir; \
+              for sdir in $(AUTO_FILES_PROPERTIES_DIRS); do \
+                if [ -d $$sdir ] ; then \
+                  $(FIND) $$sdir $(FILES_properties_find_filters1) \
+                                 -name '*.properties' -print ; \
+                fi ; \
+              done \
+            ); \
+          fi; \
+        done \
+      )
+else
+  FILES_properties_auto1 =
+endif # AUTO_FILES_PROPERTIES_DIRS
+
+# Add any automatically found properties files to the properties file list
+FILES_properties += $(FILES_properties_auto1)
+
+#
+# Get Resources help
+#
+include $(JDK_TOPDIR)/makefiles/common/internal/Resources.gmk
+
+#
+# Compiling .java files.
+#
+
+#
+# Automatically add to FILES_java if AUTO_FILES_JAVA_DIRS is defined
+#
+#    There are two basic types of sources, normal source files and the
+#    generated ones. The Normal sources will be located in:
+#         $(ALL_CLASSES_SRC)
+#    The generated sources, which might show up late to dinner, are at:
+#         $(GENSRCDIR)
+#    and since they could be generated late, we need to be careful that
+#    we look for these sources late and not use the ':=' assignment which
+#    might miss their generation.
+
+ifdef AUTO_FILES_JAVA_DIRS
+  # Filter out these files or directories
+  AUTO_FILES_JAVA_SOURCE_FILTERS1  = $(SCM_DIRs) ',*'
+  AUTO_FILES_JAVA_SOURCE_FILTERS2  = 
+  AUTO_FILES_JAVA_SOURCE_FILTERS1 += $(AUTO_JAVA_PRUNE)
+  AUTO_FILES_JAVA_SOURCE_FILTERS2 += $(AUTO_JAVA_PRUNE)
+
+  # First list is the normal sources that should always be there,
+  #   by using the ':=', which means we do this processing once.
+  FILES_java_find_filters1 = $(AUTO_FILES_JAVA_SOURCE_FILTERS1:%=-name % -prune -o)
+  FILES_java_auto1 := \
+     $(shell \
+        for dir in $(ALL_CLASSES_SRC) ; do \
+          if [ -d $$dir ] ; then \
+            ( $(CD) $$dir; \
+              for sdir in $(AUTO_FILES_JAVA_DIRS); do \
+                if [ -d $$sdir ] ; then \
+                  $(FIND) $$sdir $(FILES_java_find_filters1) \
+                                 -name '*.java' -print ; \
+                fi ; \
+              done \
+            ); \
+          fi; \
+        done \
+      )
+  # Second list is the generated sources that should be rare, but will likely
+  #   show up late and we need to look for them at the last minute, so we
+  #   cannot use the ':=' assigment here. But if this gets expanded multiple
+  #   times, the if tests should make them relatively cheap.
+  FILES_java_find_filters2 = $(AUTO_FILES_JAVA_SOURCE_FILTERS2:%=-name % -prune -o)
+  FILES_java_auto2 = \
+     $(shell \
+        for dir in $(GENSRCDIR); do \
+          if [ -d $$dir ] ; then \
+            ( $(CD) $$dir; \
+              for sdir in $(AUTO_FILES_JAVA_DIRS); do \
+                if [ -d $$sdir ] ; then \
+                  $(FIND) $$sdir $(FILES_java_find_filters2) \
+                                 -name '*.java' -print ; \
+                fi ; \
+              done \
+            ); \
+          fi; \
+        done \
+      )
+else
+  FILES_java_auto1 =
+  FILES_java_auto2 =
+endif
+
+# Add all found java sources to FILES_java macro (if AUTO_FILES_JAVA_DIRS used)
+FILES_java += $(FILES_java_auto1) $(FILES_java_auto2)
+
+# File that will hold java source names that need compiling
+JAVA_SOURCE_LIST=$(TEMPDIR)/.classes.list
+
+# Add a java source to the list
+define add-java-file
+$(ECHO) "$?" >> $(JAVA_SOURCE_LIST)
+$(check-conventions)
+endef
+
+ifdef DEMOS
+$(CLASSDESTDIR)/%.class: $(SOURCEPATH)/%.java
+	$(add-java-file)
+#Redirect zh_HK java files to tmp directory which created from zh_TW
+#$(CLASSDESTDIR)/%_zh_HK.class: $(JDK_L10N_TMP_OUTPUTDIR)/%_zh_HK.java
+#	$(add-java-file)
+else
+
+#
+# Rules for closed files
+#
+# If filenames are duplicated between open/closed workspaces, prefer
+# the closed files.
+#
+# Rule ordering in this Makefile is important: some targets depend
+# on closed files replacing open ones, and thus the closed file rules
+# must be found before the open ones.
+#
+# Don't reorder without consulting teams that depend on this behavior.
+#
+ifndef OPENJDK
+$(CLASSDESTDIR)/%.class: $(CLOSED_PLATFORM_SRC)/classes/%.java
+	$(add-java-file)
+$(CLASSDESTDIR)/%.class: $(CLOSED_SHARE_SRC)/classes/%.java
+	$(add-java-file)
+endif
+
+$(CLASSDESTDIR)/%.class: $(GENSRCDIR)/%.java
+	$(add-java-file)
+
+ifeq ($(PLATFORM), macosx)
+$(CLASSDESTDIR)/%.class: $(JDK_TOPDIR)/src/macosx/classes/%.java
+	$(add-java-file)
+endif
+$(CLASSDESTDIR)/%.class: $(PLATFORM_SRC)/classes/%.java
+	$(add-java-file)
+
+$(CLASSDESTDIR)/%.class: $(SHARE_SRC)/classes/%.java
+	$(add-java-file)
+
+#Redirect zh_HK java files to tmp directory which created from zh_TW
+$(CLASSDESTDIR)/%_zh_HK.class: $(JDK_L10N_TMP_OUTPUTDIR)/%_zh_HK.java
+	$(add-java-file)
+endif
+
+# List of class files needed
+FILES_class = $(FILES_java:%.java=$(CLASSDESTDIR)/%.class)
+
+# Got to include exported files.
+FILES_class += $(FILES_export:%.java=$(CLASSDESTDIR)/%.class)
+
+# Construct list of java sources we need to compile
+source_list_prime:
+	mkdir -p $(TEMPDIR)
+# Note that we slip resources in so that compiled properties files get created:
+$(JAVA_SOURCE_LIST) : source_list_prime resources $(FILES_class)
+	touch $@
+
+.delete.classlist:
+	rm -f $(JAVA_SOURCE_LIST)
+
+# Make sure all newer sources are compiled (in a batch)
+classes : $(CLASSES_INIT) .delete.classlist .compile.classlist
+
+.compile.classlist : $(JAVA_SOURCE_LIST)
+	$(MKDIR) -p $(CLASSDESTDIR)
+	$(RM) $<.filtered
+	$(CAT) $< | $(NAWK) 'length>0' | $(SORT) -u > $<.filtered
+	numfiles=`$(WC) -l < $<.filtered` ; \
+	  if [ $$numfiles -ge 1 ] ; then \
+	    $(ECHO) "# Java sources to be compiled: (listed in file $<)"; \
+	    $(CAT) $<.filtered; \
+	    $(ECHO) "# Running javac: $$numfiles files; in $(CURDIR)"; \
+	    $(ECHO) $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$<.filtered; \
+	    $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$<.filtered && \
+	    $(ECHO) "# javac finished"; \
+	  fi
+	$(java-vm-cleanup)
+
+clobber clean::
+	rm -f $(JAVA_SOURCE_LIST)
+
+ifndef DONT_CLOBBER_CLASSES
+  ifndef PACKAGE
+    DONT_CLOBBER_CLASSES = true
+  else
+    DONT_CLOBBER_CLASSES = false
+  endif
+endif
+
+packages.clean:
+ifeq ($(DONT_CLOBBER_CLASSES),false)
+  ifdef AUTO_FILES_JAVA_DIRS
+	for sdir in $(AUTO_FILES_JAVA_DIRS); do \
+	  echo "rm -f -r $(CLASSDESTDIR)/$$sdir"; \
+	  rm -f -r $(CLASSDESTDIR)/$$sdir; \
+        done
+  else
+	rm -f -r $(CLASSDESTDIR)/$(PKGDIR)
+  endif
+endif
+
+ifdef DEMOS
+classes.clean:
+	rm -f -r $(DEMODST) $(CLASSDESTDIR)
+else
+classes.clean: packages.clean
+	rm -f $(JAVA_SOURCE_LIST)
+endif
+
+#
+# C and C++ make dependencies
+#
+include $(JDK_TOPDIR)/makefiles/common/internal/NativeCompileRules.gmk
+
+#
+# Running Javah to generate stuff into CClassHeaders.
+#
+
+ifdef FILES_export
+
+CLASSES.export  = $(subst /,.,$(FILES_export:%.java=%))
+CLASSES.export += $(subst /,.,$(FILES_export2:%.java=%))
+CLASSES.export += $(subst /,.,$(FILES_export3:%.java=%))
+CLASSES_export  = $(FILES_export:%.java=$(CLASSDESTDIR)/%.class)
+CLASSES_export += $(FILES_export2:%.java=$(CLASSDESTDIR)/%.class)
+CLASSES_export += $(FILES_export3:%.java=$(CLASSDESTDIR)/%.class)
+
+# Fix when deploy workspace makefiles don't depend on this name
+#CLASSHDR_DOTFILE=$(CLASSHDRDIR)/.classheaders
+
+CLASSHDR_DOTFILE=$(OBJDIR)/.class.headers.$(ARCH)
+
+classheaders: classes $(CLASSHDR_DOTFILE)
+
+$(CLASSHDR_DOTFILE): $(CLASSES_export)
+	$(prep-target)
+	echo "# Running javah:"
+	echo $(UNCYGDRIVE) $(JAVAH_CMD) -d $(CLASSHDRDIR)/ \
+		$(CLASSES.export) $(subst $$,\$$,$(EXPORTED_inner))
+	$(UNCYGDRIVE) $(JAVAH_CMD) -d $(CLASSHDRDIR)/ \
+		$(CLASSES.export) $(subst $$,\$$,$(EXPORTED_inner))
+	$(java-vm-cleanup)
+	touch $@
+
+classheaders.clean:
+	rm -f $(CLASSHDR_DOTFILE)
+	rm -f -r $(CLASSHDRDIR)
+
+else # FILES_export
+
+classheaders: classes
+
+classheaders.clean: 
+
+endif # FILES_export
+
+clean clobber:: classheaders.clean classes.clean .delete.classlist
+
+# 
+# Default dependencies
+#
+
+all: build
+
+build: classheaders
+
+default: all
+
+.PHONY: all build clean clobber \
+        .delete.classlist classes .compile.classlist classes.clean \
+	 classheaders classheaders.clean \
+	 batch_compile
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/Subdirs.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,148 @@
+# Copyright (c) 2010, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Generic makefile for building subdirectories.
+#
+# SUBDIRS variables to specify the subdirectories to build recursively.
+# Makefile has to include Subdirs.gmk AFTER all SUBDIRS variables are
+# defined.
+#
+# This file does not contain any rule.
+#
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+
+#
+# SUBDIRS          subdirs for the base module always get built
+# SUBDIRS_<group>  subdirs for the named group
+#
+# By default, subdirs specified in the SUBDIRS and all SUBDIRS_* 
+# variables will be built.
+#
+# Variables of the currently supported groups are:
+#  SUBDIRS_desktop    
+#  SUBDIRS_management
+#  SUBDIRS_enterprise
+#  SUBDIRS_misc
+#  SUBDIRS_tools
+# 
+# Change to the above list also need to update 
+# make/common/shared/Sanity.gmk.  NOTE: this list is subject
+# to change.
+# 
+# Eventually we want to restructure the make directory
+# according to these grouping (e.g. make/desktop/...) and
+# the SUBDIRS_<group> variables would not be needed.
+# 
+
+# Iterate the subdirectories specified in $1.
+# - cd into each subdir and make them
+
+# Given a SUBDIRS* list (first argument), cd into them and make them
+#   SUBDIRS_MAKEFLAGS      Make settings for a subdir make
+#   SUBDIRS_MAKEFLAGS-$@   Make settings specific to this target
+#
+define subdirs-group-loop
+$(ECHO) "Begin Processing SUBDIRS: $($1)"
+for i in DUMMY $($1) ; do \
+  if [ "$$i" != "DUMMY" ] ; then \
+    $(MAKE) -C $$i $@ $(SUBDIRS_MAKEFLAGS) $(SUBDIRS_MAKEFLAGS-$@) \
+            FULL_VERSION=$(FULL_VERSION) RELEASE=$(RELEASE) || exit 1; \
+  fi ; \
+done
+$(ECHO) "Done Processing SUBDIRS: $($1)"
+endef
+
+# Given a OTHERSUBDIRS list, cd into them and make them (extra loop define)
+#   OTHERSUBDIRS_MAKEFLAGS      Make settings for a subdir make
+define OTHERSUBDIRS-loop
+$(ECHO) "Begin Processing OTHERSUBDIRS: $(OTHERSUBDIRS)"
+for i in DUMMY $(OTHERSUBDIRS) ; do \
+  if [ "$$i" != "DUMMY" ] ; then \
+    $(MAKE) -C $$i $@ $(OTHERSUBDIRS_MAKEFLAGS) \
+            FULL_VERSION=$(FULL_VERSION) RELEASE=$(RELEASE) || exit 1; \
+  fi ; \
+done
+$(ECHO) "Done Processing OTHERSUBDIRS: $(OTHERSUBDIRS)"
+endef
+
+#
+# Iterate the list specified in SUBDIRS_<group> only if
+# SUBDIRS_<group> is set.
+#
+ifdef SUBDIRS_desktop 
+  define subdirs-desktop-loop
+      $(call subdirs-group-loop,SUBDIRS_desktop)
+  endef
+else   
+  define subdirs-desktop-loop
+  endef
+endif   # SUBDIRS_desktop 
+
+ifdef SUBDIRS_enterprise 
+  define subdirs-enterprise-loop
+      $(call subdirs-group-loop,SUBDIRS_enterprise)
+  endef
+else   
+define subdirs-enterprise-loop
+endef
+endif   # SUBDIRS_enterprise 
+
+ifdef SUBDIRS_management 
+  define subdirs-management-loop
+      $(call subdirs-group-loop,SUBDIRS_management)
+  endef
+else   
+  define subdirs-management-loop
+  endef
+endif   # SUBDIRS_management 
+
+ifdef SUBDIRS_misc 
+  define subdirs-misc-loop
+      $(call subdirs-group-loop,SUBDIRS_misc)
+  endef
+else   
+  define subdirs-misc-loop
+  endef
+endif   # SUBDIRS_misc 
+
+ifdef SUBDIRS_tools 
+  define subdirs-tools-loop
+      $(call subdirs-group-loop,SUBDIRS_tools)
+  endef
+else   
+  define subdirs-tools-loop
+  endef
+endif   # SUBDIRS_tools 
+
+#
+# If BUILD_MODULES is not set or it's set to "all",
+# iterate all groups.
+SUBDIRS_all = $(SUBDIRS) $(SUBDIRS_desktop) $(SUBDIRS_enterprise) \
+	      $(SUBDIRS_management) $(SUBDIRS_misc) $(SUBDIRS_tools)
+
+define SUBDIRS-loop
+  $(call subdirs-group-loop,SUBDIRS_all)
+endef
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/Defs-corba.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,63 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# The specific packages that come from or go to rt.jar and tools.jar
+IMPORT_RT_PACKAGES +=  \
+     org/omg/CORBA \
+     org/omg/CORBA_2_3 \
+     org/omg/CosNaming \
+     org/omg/Dynamic \
+     org/omg/DynamicAny \
+     org/omg/IOP \
+     org/omg/Messaging \
+     org/omg/PortableInterceptor \
+     org/omg/PortableServer \
+     org/omg/SendingContext \
+     org/omg/stub/java/rmi \
+     javax/rmi \
+     javax/rmi/CORBA \
+     javax/activity \
+     javax/transaction \
+     com/sun/corba/se/GiopIDL \
+     com/sun/corba/se/PortableActivationIDL \
+     com/sun/corba/se/impl \
+     com/sun/corba/se/internal \
+     com/sun/corba/se/org/omg/CORBA \
+     com/sun/corba/se/pept \
+     com/sun/corba/se/spi \
+     com/sun/org/omg/CORBA \
+     com/sun/org/omg/SendingContext \
+     com/sun/tools/corba/se/logutil \
+     sun/corba \
+     sun/rmi/rmic/iiop
+
+IMPORT_TOOLS_PACKAGES += \
+     com/sun/tools/corba/se/idl \
+     sun/rmi/rmic/iiop
+
+IMPORT_CORBA_BINARIES += \
+     lib/orb.idl \
+     lib/ir.idl
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/Defs-jaxp.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,53 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# The specific packages that come from or go to rt.jar and tools.jar
+IMPORT_RT_PACKAGES += \
+     org/w3c/dom \
+     org/xml/sax \
+     javax/xml/XMLConstants.class \
+     javax/xml/datatype \
+     javax/xml/namespace \
+     javax/xml/parsers \
+     javax/xml/stream \
+     javax/xml/transform \
+     javax/xml/validation \
+     javax/xml/xpath \
+     com/sun/java_cup \
+     com/sun/org/apache/bcel \
+     com/sun/org/apache/regexp \
+     com/sun/org/apache/xalan \
+     com/sun/org/apache/xerces \
+     com/sun/org/apache/xml/internal/dtm \
+     com/sun/org/apache/xml/internal/res \
+     com/sun/org/apache/xml/internal/resolver \
+     com/sun/org/apache/xml/internal/serialize \
+     com/sun/org/apache/xml/internal/serializer \
+     com/sun/org/apache/xml/internal/utils \
+     com/sun/org/apache/xpath \
+     com/sun/xml/internal/stream
+
+IMPORT_TOOLS_PACKAGES +=
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/Defs-jaxws.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,63 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# The specific packages that come from or go to rt.jar and tools.jar
+IMPORT_RT_PACKAGES += \
+     META-INF/mailcap.default \
+     META-INF/mimetypes.default \
+     javax/activation \
+     com/sun/activation \
+     javax/xml/bind \
+     javax/xml/soap \
+     javax/xml/ws \
+     javax/jws \
+     javax/annotation \
+     com/sun/xml/internal/bind \
+     com/sun/xml/internal/fastinfoset \
+     com/sun/xml/internal/messaging \
+     com/sun/xml/internal/org/jvnet \
+     com/sun/xml/internal/txw2 \
+     com/sun/xml/internal/ws \
+     com/sun/xml/internal/stream/buffer
+
+NOT_USED_PACKAGES += \
+     com/sun/tools/internal/txw2
+
+IMPORT_TOOLS_PACKAGES += \
+     com/sun/codemodel \
+     com/sun/istack/internal/tools \
+     com/sun/xml/internal/rngom \
+     com/sun/xml/internal/xsom \
+     com/sun/xml/internal/dtdparser \
+     com/sun/tools/internal/xjc \
+     com/sun/tools/internal/ws \
+     com/sun/tools/internal/jxc \
+     org/relaxng \
+     META-INF/services/com.sun.tools.internal.ws.wscompile.Plugin \
+     META-INF/services/com.sun.tools.internal.xjc.Plugin \
+     com/sun/tools/internal/jxc/ap \
+     com/sun/tools/internal/ws/wscompile/plugin/at_generated
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/Defs-langtools.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,42 @@
+#
+# Copyright (c) 1997, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# The specific packages that come from or go to rt.jar and tools.jar
+
+IMPORT_RT_PACKAGES +=               \
+      javax/annotation/processing   \
+      javax/lang/model              \
+      javax/tools
+
+IMPORT_TOOLS_PACKAGES +=            \
+      com/sun/javadoc               \
+      com/sun/source                \
+      com/sun/tools/classfile       \
+      com/sun/tools/doclets         \
+      com/sun/tools/javac           \
+      com/sun/tools/javadoc         \
+      com/sun/tools/javah           \
+      com/sun/tools/javap
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/ImportComponents.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,173 @@
+#
+# Copyright (c) 1997, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+-include $(SPEC)
+
+# JDK jars where component classes come from as second choice
+JDK_RT_JAR    = $(JDK_IMPORT_PATH)/jre/lib/rt.jar
+JDK_TOOLS_JAR = $(JDK_IMPORT_PATH)/lib/tools.jar
+JDK_RESOURCES_JAR = $(JDK_IMPORT_PATH)/jre/lib/resources.jar
+
+# The specific packages that come from or go to rt.jar and tools.jar
+#   IF the component deliverables are not available.
+IMPORT_TOOLS_PACKAGES =
+IMPORT_RT_PACKAGES =
+
+# The following will add to IMPORT_TOOLS_PACKAGES and/or IMPORT_RT_PACKAGES
+ifndef LANGTOOLS_DIST
+  include $(BUILDDIR)/common/internal/Defs-langtools.gmk
+endif
+ifndef CORBA_DIST
+  include $(BUILDDIR)/common/internal/Defs-corba.gmk
+endif
+ifndef JAXP_DIST
+  include $(BUILDDIR)/common/internal/Defs-jaxp.gmk
+endif
+ifndef JAXWS_DIST
+  include $(BUILDDIR)/common/internal/Defs-jaxws.gmk
+endif
+
+# Clean up these lists so empty lists are empty
+IMPORT_TOOLS_PACKAGES := $(strip $(IMPORT_TOOLS_PACKAGES))
+IMPORT_RT_PACKAGES    := $(strip $(IMPORT_RT_PACKAGES))
+
+# Relative paths to import component deliverables
+CLASSES_JAR_FILE=lib/classes.jar
+SRC_ZIP_FILE=lib/src.zip
+BIN_ZIP_FILE=lib/bin.zip
+DOC_ZIP_FILE=lib/doc.zip
+
+#################################################################
+# Macros:
+
+# Importing component class files
+define import-one-classes
+if [ "$($1)" != "" ] ; then \
+  $(ECHO) "Importing classes from component $1"; \
+  $(call Unjar,$2,$($1)/$(CLASSES_JAR_FILE),); \
+fi
+endef
+
+# Importing optional component doc files (for man pages?)
+define import-one-docs
+if [ "$($1)" != "" -a -f $($1)/$(DOC_ZIP_FILE) ] ; then \
+  $(ECHO) "Importing docs from component $1"; \
+  $(call Unzipper,$2,$($1)/$(DOC_ZIP_FILE)); \
+fi
+endef
+
+# Importing optional component src files (for jdk src.zip and javadoc)
+define import-one-sources
+if [ "$($1)" != "" ] ; then \
+  $(ECHO) "Importing sources from component $1"; \
+  $(call Unzipper,$2,$($1)/$(SRC_ZIP_FILE)); \
+fi
+endef
+
+# Importing optional component bin files (for install image)
+define import-one-binaries
+if [ "$($1)" != "" -a -f $($1)/$(BIN_ZIP_FILE) ] ; then \
+  $(ECHO) "Importing binaries from component $1"; \
+  $(call Unzipper,$2,$($1)/$(BIN_ZIP_FILE)); \
+fi
+endef
+
+# Unzip zip file $2 into directory $1 (if $2 exists)
+#   Warning: $2 must be absolute path not relative
+define Unzipper
+( \
+  $(MKDIR) -p $1; \
+  ( $(CD) $1 && $(UNZIP) -o $2 > /dev/null ) \
+)
+endef
+
+# Unjar directories $3 from jar file $2 into directory $1 (if $2 exists)
+#   Warning: $2 must be absolute path not relative
+define Unjar
+( \
+  $(MKDIR) -p $1; \
+  ( $(CD) $1 && $(BOOT_JAR_CMD) xf $2 $3 $(BOOT_JAR_JFLAGS) ) && \
+  ( $(CD) $1 && $(java-vm-cleanup) ) \
+)
+endef
+
+# Import all component sources into directory $1
+define import-component-sources
+$(call import-one-sources,LANGTOOLS_DIST,$1)
+$(call import-one-sources,CORBA_DIST,$1)
+$(call import-one-sources,JAXP_DIST,$1)
+$(call import-one-sources,JAXWS_DIST,$1)
+endef
+
+# Import all component docs into directory $1 (optional)
+define import-component-docs
+$(call import-one-docs,LANGTOOLS_DIST,$1)
+$(call import-one-docs,CORBA_DIST,$1)
+$(call import-one-docs,JAXP_DIST,$1)
+$(call import-one-docs,JAXWS_DIST,$1)
+endef
+
+# Import all component bins into directory $1 (optional)
+define import-component-binaries
+$(call import-one-binaries,LANGTOOLS_DIST,$1)
+$(call import-one-binaries,CORBA_DIST,$1)
+$(call import-one-binaries,JAXP_DIST,$1)
+$(call import-one-binaries,JAXWS_DIST,$1)
+if [ "$(CORBA_DIST)" = "" ] ; then \
+  $(MKDIR) -p $(OUTPUTDIR)/lib ; \
+  ( $(CD) $(JDK_IMPORT_PATH) && $(CP) $(IMPORT_CORBA_BINARIES) $(ABS_OUTPUTDIR)/lib ) ; \
+fi 
+endef
+
+# Import all component classes into directory $1
+#   Here we special case classes coming from JDK when component not supplied
+define import-component-classes
+$(ECHO) "Import classes from $(JDK_IMPORT_PATH)"
+if [ "$(IMPORT_TOOLS_PACKAGES)" != "" ] ; then \
+  $(call Unjar,$1,$(JDK_RESOURCES_JAR),$(IMPORT_TOOLS_PACKAGES)); \
+  $(call Unjar,$1,$(JDK_TOOLS_JAR),$(IMPORT_TOOLS_PACKAGES)); \
+fi
+if [ "$(IMPORT_RT_PACKAGES)" != "" ] ; then \
+  $(call Unjar,$1,$(JDK_RESOURCES_JAR),$(IMPORT_RT_PACKAGES)); \
+  $(call Unjar,$1,$(JDK_RT_JAR),$(IMPORT_RT_PACKAGES)); \
+fi
+$(call import-one-classes,LANGTOOLS_DIST,$1)
+$(call import-one-classes,CORBA_DIST,$1)
+$(call import-one-classes,JAXP_DIST,$1)
+$(call import-one-classes,JAXWS_DIST,$1)
+endef
+
+# Clean up import files
+define import-component-sources-clean
+$(RM) -r $1
+endef
+define import-component-docs-clean
+$(RM) -r $1
+endef
+define import-component-classes-clean
+$(RM) -r $(IMPORT_TOOLS_PACKAGES:%=$1/%)
+$(RM) -r $(IMPORT_RT_PACKAGES:%=$1/%)
+endef
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/NativeCompileRules.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,238 @@
+#
+# Copyright (c) 1995, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Native C/C++ Compile Rules
+#
+
+-include $(SPEC)
+-include $(VARS)
+
+COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
+COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
+
+#
+# INCREMENTAL_BUILD: Record the #include file dependencies.
+#
+# NOTE: We build make include files with the suffix
+#       $(DEPEND_SUFFIX) on every compilation. These are initially 
+#       created as temp files just in case a ^C kills it in the middle.
+#	Compiler is smart enough to handle ^C and not create the .o file, or
+#	is supposed to be that smart, but the .$(DEPEND_SUFFIX) file 
+#       creation here isn't.
+#	These .$(DEPEND_SUFFIX) files are included by Library.gmk and 
+#       Program.gmk, when they exist (Search for 'make dependencies').
+#
+
+ifeq ($(INCREMENTAL_BUILD),true)
+
+$(OBJDIR)/%.$(DEPEND_SUFFIX): %.c
+	@$(prep-target)
+	@$(ECHO) "Creating $@"
+	@$(RM) $@.temp
+	@$(CC) $(CC_DEPEND) $(CPPFLAGS) $< 2> $(DEV_NULL) | \
+	    $(CC_DEPEND_FILTER) > $@.temp
+	@$(MV) $@.temp $@
+
+$(OBJDIR)/%.$(DEPEND_SUFFIX): %.cpp
+	@$(prep-target)
+	@$(ECHO) "Creating $@"
+	@$(RM) $@.temp
+	@$(CXX) $(CC_DEPEND) $(CPPFLAGS) $(CXXFLAGS) $< 2> $(DEV_NULL) | \
+	    $(CC_DEPEND_FILTER) > $@.temp
+	@$(MV) $@.temp $@
+
+endif # INCREMENTAL_BUILD
+
+#
+# C, C++, asm files.
+#
+# Normal or parallel compile rule is the same, but batch compiles require
+#  we save up the sources files that use the same compile line so that we
+#  can do one compile line.
+#
+
+ifneq ($(COMPILE_APPROACH), batch)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+	@$(check-conventions)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.cpp
+	@$(prep-target)
+	$(COMPILE.cc) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+	@$(check-conventions)
+
+else
+  
+  #
+  # Batch compiling might be faster if the compiler was smart about recognizing
+  #   optimization opportunities available when all files are being compiled
+  #   the same way. Unfortunately this is rare.
+  #   Automatic pre-compiled headers (pch) might be a possibility so we
+  #   add any auto pch options here.
+  # So we save all the source files that have the same compile line as the
+  #   first file. A normal compile pass is made after the batch compile
+  #   to catch anything missed.
+  # If the compilers had a -o option that allowed us to direct where to
+  #   write the object files to, then we would not need to save the object
+  #   file list or move them from the make directory to the build directory.
+  #
+
+  # Source names
+  COMPILE_LIST.c         = $(OBJDIR)/.source_names_c
+  COMPILE_LIST.cpp       = $(OBJDIR)/.source_names_cpp
+
+  # Object file list
+  COMPILE_OBJ_LIST.c     = $(OBJDIR)/.obj_names_c
+  COMPILE_OBJ_LIST.cpp   = $(OBJDIR)/.obj_names_cpp
+  
+  # The compile line
+  COMPILE_BATCH.c        = $(OBJDIR)/.compile_c
+  COMPILE_BATCH.cpp      = $(OBJDIR)/.compile_cpp
+
+  # The compile line for the current target
+  THIS_COMPILE_BATCH.c   = $(COMPILE_BATCH.c)-$(@F)
+  THIS_COMPILE_BATCH.cpp = $(COMPILE_BATCH.cpp)-$(@F)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.c
+	@$(prep-target)
+	@$(ECHO) "$(COMPILE.c) $(CFLAGS_GPROF)" > $(THIS_COMPILE_BATCH.c)
+	@if [ ! -s $(COMPILE_BATCH.c) ] ; then \
+	  $(CP) $(THIS_COMPILE_BATCH.c) $(COMPILE_BATCH.c) ; \
+	  $(ECHO) $< > $(COMPILE_LIST.c); \
+	  $(ECHO) $(@F) > $(COMPILE_OBJ_LIST.c); \
+	elif [ "`$(DIFF) -w -b $(THIS_COMPILE_BATCH.c) $(COMPILE_BATCH.c)`" \
+	       = "" ] ; then \
+	  $(ECHO) $< >> $(COMPILE_LIST.c); \
+	  $(ECHO) $(@F) >> $(COMPILE_OBJ_LIST.c); \
+	fi
+	@$(RM) $(THIS_COMPILE_BATCH.c)
+	@$(check-conventions)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.cpp
+	@$(prep-target)
+	@$(ECHO) "$(COMPILE.cc) $(CFLAGS_GPROF)" > $(THIS_COMPILE_BATCH.cpp)
+	@if [ ! -s $(COMPILE_BATCH.cpp) ] ; then \
+	  $(CP) $(THIS_COMPILE_BATCH.cpp) $(COMPILE_BATCH.cpp) ; \
+	  $(ECHO) $< > $(COMPILE_LIST.cpp); \
+	  $(ECHO) $(@F) > $(COMPILE_OBJ_LIST.cpp); \
+	elif [ "`$(DIFF) -w -b $(THIS_COMPILE_BATCH.cpp) $(COMPILE_BATCH.cpp)`"\
+	       = "" ] ; then \
+	  $(ECHO) $< >> $(COMPILE_LIST.cpp); \
+	  $(ECHO) $(@F) >> $(COMPILE_OBJ_LIST.cpp); \
+	fi
+	@$(RM) $(THIS_COMPILE_BATCH.cpp)
+	@$(check-conventions)
+
+batch_compile: $(FILES_o)
+	@$(ECHO) "Doing batch compilations"
+	@if [ -s $(COMPILE_LIST.c) ] ; then \
+	  $(ECHO) "$(COMPILE.c) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \
+	   `$(CAT) $(COMPILE_LIST.c)`" ; \
+	  ( $(COMPILE.c) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \
+	    `$(CAT) $(COMPILE_LIST.c)` && \
+	    $(ECHO) "$(MV) `$(CAT) $(COMPILE_OBJ_LIST.c)` $(OBJDIR)" && \
+	    $(MV) `$(CAT) $(COMPILE_OBJ_LIST.c)` $(OBJDIR) ) || exit 1 ; \
+	fi
+	@if [ -s $(COMPILE_LIST.cpp) ] ; then \
+	  $(ECHO) "$(COMPILE.cc) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \
+	   `$(CAT) $(COMPILE_LIST.cpp)`" ; \
+	  ( $(COMPILE.cc) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \
+	    `$(CAT) $(COMPILE_LIST.cpp)` && \
+	    $(ECHO) "$(MV) `$(CAT) $(COMPILE_OBJ_LIST.cpp)` $(OBJDIR)" && \
+	    $(MV) `$(CAT) $(COMPILE_OBJ_LIST.cpp)` $(OBJDIR) ) || exit 1 ; \
+	fi
+	@$(RM) $(COMPILE_BATCH.c)   $(COMPILE_LIST.c)   $(COMPILE_OBJ_LIST.c)
+	@$(RM) $(COMPILE_BATCH.cpp) $(COMPILE_LIST.cpp) $(COMPILE_OBJ_LIST.cpp)
+
+endif
+
+# newer as does not handle c++ style comments
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.s
+    ifneq ($(CC_VERSION), gcc)
+	@$(prep-target)
+	$(COMPILE.s) $(CC_OBJECT_OUTPUT_FLAG)$@ $<
+    else
+	@$(prep-target)
+	$(CPP) -x assembler-with-cpp $< | $(COMPILE.s) -o $@
+    endif
+	@$(check-conventions)
+
+# Obj-C files (Mac OS X only).
+ifeq ($(PLATFORM), macosx)
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.m
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+	@$(check-conventions)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.mm
+	@$(prep-target)
+	$(COMPILE.cc) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+	@$(check-conventions)
+
+$(OBJDIR)/%.$(OBJECT_SUFFIX): %.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+	@$(check-conventions)
+endif # PLATFORM
+
+#
+# Quick hack for making the compiler generate just the assembly file.
+#	$ gnumake obj/sparc/myfile.s
+#
+$(OBJDIR)/%.s: %.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ -S $<
+	@$(check-conventions)
+
+# remove the intermediate files from the directories.
+#    (If VARIANT=OPT, this removes all debug and fastdebug files too)
+clobber clean::
+	$(RM) -r $(OBJDIR)
+	$(RM) -r $(OBJDIR)_*
+
+#
+# Lint support
+# (The 'lint' rule below is an older rule not using the .$(LINT_SUFFIX) files)
+#
+
+ifeq ($(PLATFORM), solaris)
+$(OBJDIR)/%.$(LINT_SUFFIX): %.c
+	@$(prep-target)
+	$(LINT.c) -dirout=$(OBJDIR) -c $<
+lint.clean:
+	$(RM) $(OBJDIR)/*.$(LINT_SUFFIX)
+# Old rule
+lint: $(FILES_c)
+        ifneq ($(FILES_c),)
+	  $(LINT.c) -Ncheck -Nlevel=3 $? $(LDLIBS) > lint.$(ARCH) 2>&1
+        endif
+endif
+
+.PHONY: batch_compile
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/internal/Resources.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,262 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# 
+# Generic mechanism for installing properties files, resource bundles,
+#   and other resource files.
+#
+# FILES_properties should be defined.
+# FILES_compiled_properties should be defined.
+# 
+# If COMPILED_PROPERTIES_SUPERCLASS is defined, ALL the FILES_properties
+# files will be compiled into java with this super class.
+#
+# You can add locales to LOCALE_SUFFIXES explicitly, or use the
+# LOCALE_SET_DEFINITION variable to add some pre-defined locale lists.
+# The LOCALE_SET_DEFINITION can have the value: jre, plugin, or jdk.
+#
+# Resource bundles to be installed are identified using the following variables.
+# Note that only the file name of the base bundle is given; localized versions
+# are added automatically. For Java files, use a format suitable for inclusion
+# in the FILES_java list; dito for properties, all relative paths.
+#
+#   NEW_RESOURCE_BUNDLES_JAVA        - new resource bundles implemented in
+#                                      Java, not localized
+#   RESOURCE_BUNDLES_JAVA            - resource bundles implemented in
+#                                      Java, localized
+#
+# The following variable is now used for most .properties files in the JDK. 
+# These properties files are converted into java and compiled with javac.
+# The resulting .class files are usually smaller and are always faster to load. 
+# The relative path to the properties file becomes a relative path to a
+# java source file.
+#
+#   RESOURCE_BUNDLES_COMPILED_PROPERTIES - resource bundles implemented as
+#                                          properties files, localized
+#   NEW_RESOURCE_BUNDLES_COMPILED_PROPERTIES - same as above, not localized
+#
+# For non-compiled properties files, use the following variables:
+#
+#   NEW_RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES  - new resource bundles implemented as
+#                                      properties files, not localized
+#   RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES      - resource bundles implemented as
+#                                      properties files, localized
+#
+# Other properties files to be installed are identified using the variable:
+#
+#   OTHER_PROPERTIES
+#
+
+include $(SPEC)
+include $(SRC_ROOT)/jdk/makefiles/Tools.gmk
+
+# Compile properties files into java source?
+ifdef COMPILED_PROPERTIES_SUPERCLASS
+  # Add all properties files to the compiled properties list (all or nothing)
+  COMPILED_PROPERTIES += $(FILES_compiled_properties) $(FILES_properties)
+else
+  COMPILED_PROPERTIES_SUPERCLASS = ListResourceBundle
+  COMPILED_PROPERTIES += $(FILES_compiled_properties)
+endif
+
+# Determine the locale suffixes needed beyond the base bundle
+
+ifeq ($(LOCALE_SET_DEFINITION), plugin)
+  LOCALE_SUFFIXES += $(PLUGIN_LOCALES)
+endif
+ifeq ($(LOCALE_SET_DEFINITION), jdk)
+  LOCALE_SUFFIXES += $(JDK_LOCALES)
+endif
+ifeq ($(LOCALE_SET_DEFINITION), jre)
+  LOCALE_SUFFIXES += $(JRE_LOCALES)
+endif
+
+# Java files get tacked onto the standard list of files to compile
+RESOURCE_BUNDLE_FILES_java += $(NEW_RESOURCE_BUNDLES_JAVA)
+RESOURCE_BUNDLE_FILES_java += $(RESOURCE_BUNDLES_JAVA) \
+    $(foreach file,$(RESOURCE_BUNDLES_JAVA), \
+       $(foreach locale,$(LOCALE_SUFFIXES), \
+	  $(basename $(file))_$(locale).java))
+
+# Add to java sources list
+FILES_java += $(RESOURCE_BUNDLE_FILES_java)
+
+# Compiled properties files are translated to .java.
+#   The .java files are generated into GENSRCDIR.
+COMPILED_PROPERTIES += $(NEW_RESOURCE_BUNDLES_COMPILED_PROPERTIES)
+COMPILED_PROPERTIES += $(RESOURCE_BUNDLES_COMPILED_PROPERTIES) \
+    $(foreach file,$(RESOURCE_BUNDLES_COMPILED_PROPERTIES),\
+      $(foreach locale,$(LOCALE_SUFFIXES),\
+	 $(basename $(file))_$(locale)$(suffix $(file))))
+
+# Add to java sources list
+FILES_java += $(COMPILED_PROPERTIES:%.properties=%.java)
+
+# Non-compiled files
+PROPERTIES_FILES += $(NEW_RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES)
+PROPERTIES_FILES += $(RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES) \
+    $(foreach file,$(RESOURCE_BUNDLES_UNCOMPILED_PROPERTIES), \
+       $(foreach locale,$(LOCALE_SUFFIXES), \
+	  $(basename $(file))_$(locale)$(suffix $(file))))
+# other properties
+PROPERTIES_FILES += $(OTHER_PROPERTIES)
+
+#
+# Process and strip all non-compiled properties files (in a batch mode)
+#
+STRIP_PROP_FILES = $(PROPERTIES_FILES:%=$(CLASSDESTDIR)/%)
+# To efficiently strip properties we use one run of StripProperties. 
+# This macro gathers an option for use later.
+STRIP_PROP_options=$(TEMPDIR)/strip_prop_options
+define install-properties-file
+$(install-file)
+$(call chmod-file, a+rw)
+@$(ECHO) "# Adding to strip properties list: $@"
+$(ECHO) "$@" >> $(STRIP_PROP_options)
+endef
+
+# Constructs command line options file
+$(STRIP_PROP_options): $(STRIP_PROP_FILES)
+	@$(TOUCH) $@
+strip_prop_options_clean:
+	@$(RM) $(STRIP_PROP_options)
+
+# Strip the properties files
+strip_all_props: $(BUILD_TOOLS) $(STRIP_PROP_options)
+	@if [ -s $(STRIP_PROP_options) ] ; then \
+          $(ECHO) "$(TOOL_STRIPPROPERTIES) @$(STRIP_PROP_options)" ; \
+          $(TOOL_STRIPPROPERTIES) @$(STRIP_PROP_options) ; \
+        fi
+	@$(java-vm-cleanup)
+
+#
+# Creates files in CLASSDESTDIR
+#
+
+# In some cases, we move files from package to resources subdir
+$(CLASSDESTDIR)/$(PKGDIR)/resources/%.properties: \
+	     $(SHARE_SRC)/classes/$(PKGDIR)/%.properties
+	$(install-properties-file)
+$(CLASSDESTDIR)/%.properties: $(SHARE_SRC)/classes/%.properties
+	$(install-properties-file)
+$(CLASSDESTDIR)/%.res: $(SHARE_SRC)/classes/%.res
+	$(install-file)
+$(CLASSDESTDIR)/%.dtd: $(SHARE_SRC)/classes/%.dtd
+	$(install-file)
+$(CLASSDESTDIR)/%.xml: $(SHARE_SRC)/classes/%.xml
+	$(install-file)
+$(CLASSDESTDIR)/%.prp: $(SHARE_SRC)/classes/%.prp
+	$(install-file)
+
+#
+# To efficiently compile properties into java sources we use one run
+#   of compileproperties. This macro gathers an option for use later.
+#   Note: The properties file and java source name can be different
+#         locales, e.g. zh_TW and zh_HK. The java source filename
+#         determines the name of the class.
+COMPILE_PROP_options=$(TEMPDIR)/compile_prop_options
+define add-property-java-file
+@$(prep-target)
+@$(ECHO) "# Adding to compile properties list: $? -> $@"
+$(ECHO) "-compile $? $@ $(COMPILED_PROPERTIES_SUPERCLASS)" \
+   >> $(COMPILE_PROP_options)
+endef
+
+$(GENSRCDIR)/%.java: $(PLATFORM_SRC)/classes/%.properties
+	$(add-property-java-file)
+$(GENSRCDIR)/%.java: $(SHARE_SRC)/classes/%.properties
+	$(add-property-java-file)
+$(GENSRCDIR)/%.java: $(GENSRCDIR)/%.properties
+	$(add-property-java-file)
+ifndef OPENJDK
+$(GENSRCDIR)/%.java: $(CLOSED_PLATFORM_SRC)/classes/%.properties
+	$(add-property-java-file)
+$(GENSRCDIR)/%.java: $(CLOSED_SHARE_SRC)/classes/%.properties
+	$(add-property-java-file)
+endif
+
+# Create HK java file from zh_TW (explicit resource bundles only)
+define create-hk-java-file
+@$(prep-target)
+$(CAT) $< | $(SED) -e '/class/s/_zh_TW/_zh_HK/' > $@
+endef
+
+# Explicit resource bundles
+$(GENSRCDIR)/%_zh_HK.java: $(PLATFORM_SRC)/classes/%_zh_TW.java
+	$(create-hk-java-file)
+$(GENSRCDIR)/%_zh_HK.java: $(SHARE_SRC)/classes/%_zh_TW.java
+	$(create-hk-java-file)
+
+# Compile of zh_HK properties just uses the zh_TW properties files
+$(GENSRCDIR)/%_zh_HK.java: $(PLATFORM_SRC)/classes/%_zh_TW.properties
+	$(add-property-java-file)
+$(GENSRCDIR)/%_zh_HK.java: $(SHARE_SRC)/classes/%_zh_TW.properties
+	$(add-property-java-file)
+
+# Simple delivery of zh_HK properties files just copies zh_TW properties files
+$(CLASSDESTDIR)/%_zh_HK.properties: \
+             $(PLATFORM_SRC)/classes/%_zh_TW.properties
+	$(install-properties-file)
+$(CLASSDESTDIR)/%_zh_HK.properties: \
+             $(SHARE_SRC)/classes/%_zh_TW.properties
+	$(install-properties-file)
+
+# List of java files converted from properties files needed
+COMPILE_PROP_JAVA_FILES = $(COMPILED_PROPERTIES:%.properties=$(GENSRCDIR)/%.java)
+
+# Constructs command line options file
+$(COMPILE_PROP_options): $(COMPILE_PROP_JAVA_FILES)
+	@$(TOUCH) $@
+compile_prop_options_clean:
+	@$(RM) $(COMPILE_PROP_options)
+
+# Make sure all are compiled, one compiler run
+compile_all_props: $(BUILD_TOOLS) $(COMPILE_PROP_options)
+	@if [ `$(CAT) $(COMPILE_PROP_options) | $(WC) -l` -ge 1 ] ; then \
+	  $(MKDIR) -p $(GENSRCDIR); \
+	  $(ECHO) "$(TOOL_COMPILEPROPERTIES) @$(COMPILE_PROP_options)";\
+	  $(TOOL_COMPILEPROPERTIES) @$(COMPILE_PROP_options) ; \
+	  $(java-vm-cleanup); \
+	fi
+
+# Make sure the build rule creates all the properties
+resources:
+
+ifneq ($(strip $(PROPERTIES_FILES)),)
+  resources: strip_prop_options_clean   strip_all_props
+  clobber clean:: 
+	$(RM) $(STRIP_PROP_FILES) $(STRIP_PROP_options)
+endif
+
+ifneq ($(strip $(COMPILED_PROPERTIES)),)
+  resources: compile_prop_options_clean compile_all_props
+  clobber clean:: 
+	$(RM) $(COMPILE_PROP_JAVA_FILES) $(COMPILE_PROP_options)
+endif
+
+.PHONY: resources \
+	compile_prop_options_clean compile_all_props \
+	strip_prop_options_clean   strip_all_props
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Compiler-gcc.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,98 @@
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# GCC Compiler settings
+#
+
+ifeq ($(PLATFORM), windows)
+
+  # Settings specific to Windows, pretty stale, hasn't been used
+  CC           ?= $(COMPILER_PATH)gcc
+  CPP          ?= $(COMPILER_PATH)gcc -E
+  CXX          ?= $(COMPILER_PATH)g++
+  CCC          ?= $(COMPILER_PATH)g++
+  AR           ?= $(COMPILER_PATH)lib
+  LINK         ?= $(COMPILER_PATH)link
+  RC           ?= $(COMPILER_PATH)rc
+  LINK32       = $(LINK)
+  RSC          = $(RC)
+  # unset any GNU Make settings of MFLAGS and MAKEFLAGS which may mess up nmake
+  NMAKE          = MFLAGS= MAKEFLAGS= $(COMPILER_PATH)nmake -nologo
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    CC_VER  = UNKNOWN
+  else
+    CC_VER  = UNKNOWN
+  endif
+  _LINK_VER :=$(shell $(LINK) 2>&1 | $(HEAD) -n 1)
+  LINK_VER  :=$(call GetVersion,"$(_LINK_VER)")
+
+endif
+
+ifeq ($(PLATFORM), linux)
+
+# Settings specific to Linux
+  CC             ?= $(COMPILER_PATH)gcc
+  CPP            ?= $(COMPILER_PATH)gcc -E
+# Acquire the paths to the compilers and tools
+  # statically link libstdc++ before C++ ABI is stablized on Linux
+  STATIC_CXX     = true
+  ifeq ($(STATIC_CXX),true)
+    # g++ always dynamically links libstdc++, even we use "-Wl,-Bstatic -lstdc++"
+    # We need to use gcc to statically link the C++ runtime. gcc and g++ use
+    # the same subprocess to compile C++ files, so it is OK to build using gcc.
+    CXX            ?= $(CC)
+    #$(COMPILER_PATH)gcc
+  else
+#    CXX            = $(COMPILER_PATH)g++
+  endif
+  # Option used to create a shared library
+  SHARED_LIBRARY_FLAG = -shared
+  SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 )
+
+endif
+
+ifeq ($(PLATFORM), solaris)
+
+  # Settings specific to Solaris
+  CC             ?= $(COMPILER_PATH)gcc
+  CPP            ?= $(COMPILER_PATH)gcc -E
+  CXX            ?= $(COMPILER_PATH)g++
+
+  # Option used to create a shared library
+  SHARED_LIBRARY_FLAG = -G
+  
+endif
+
+# Get gcc version
+_CC_VER :=$(shell $(CC) -dumpversion 2>&1 )
+CC_VER  :=$(call GetVersion,"$(_CC_VER)")
+CC_MAJORVER  :=$(call MajorVersion,$(CC_VER))
+CC_MINORVER  :=$(call MinorVersion,$(CC_VER))
+
+# Name of compiler
+COMPILER_NAME = GCC$(call MajorVersion,$(CC_VER))
+COMPILER_VERSION = $(COMPILER_NAME)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Compiler-llvm.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# LLVM Compiler settings
+#
+
+ifeq ($(PLATFORM), macosx)
+
+  # Settings specific to Mac OS X
+  ifeq ($(origin CC), default)
+   CC             = $(COMPILER_PATH)llvm-gcc
+  endif
+  CPP             = $(COMPILER_PATH)llvm-gcc -E
+  ifeq ($(origin CXX), default)
+   CXX            = $(COMPILER_PATH)llvm-g++
+  endif
+
+  REQUIRED_CC_VER = 4.2.1
+
+  # Option used to create a shared library
+  SHARED_LIBRARY_FLAG = -Wl,-install_name,@rpath/$(@F) -dynamiclib -compatibility_version 1.0.0 -current_version 1.0.0
+  SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 )
+
+  AR = $(CC)
+  ARFLAGS = -nostdlib -r -arch i386 -arch x86_64 -o
+
+endif
+
+# Get llvm version
+_CC_VER :=$(shell $(CC) -dumpversion 2>&1 )
+CC_VER  :=$(call GetVersion,"$(_CC_VER)")
+
+# Name of compiler
+COMPILER_NAME = LLVM-GCC$(call MajorVersion,$(CC_VER))
+COMPILER_VERSION = $(COMPILER_NAME)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Compiler-msvc.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# MSVC Compiler settings
+#
+
+ifeq ($(PLATFORM), windows)
+  CC           ?= $(COMPILER_PATH)cl
+  CPP          ?= $(COMPILER_PATH)cl
+  CXX          ?= $(COMPILER_PATH)cl
+  CCC          ?= $(COMPILER_PATH)cl
+  AR           ?= $(COMPILER_PATH)lib
+  LINK         ?= $(COMPILER_PATH)link
+  LINK32       ?= $(LINK)
+# TODO Add dumpbin.exe to configure
+  DUMPBIN      ?= $(COMPILER_PATH)dumpbin.exe
+ 
+  # Fill in unknown values
+  COMPILER_NAME=Unknown MSVC Compiler
+  COMPILER_VERSION=
+  
+  # unset any GNU Make settings of MFLAGS and MAKEFLAGS which may mess up nmake
+  NMAKE          = MFLAGS= MAKEFLAGS= $(COMPILER_PATH)nmake -nologo
+
+  # Compiler version and type (Always get word after "Version")
+  CC_VER  := $(shell $(CC) 2>&1 | $(HEAD) -n 1 | $(SED) 's/.*\(Version.*\)/\1/' | $(NAWK) '{print $$2}')
+
+  LINK_VER := $(shell $(LINK) | $(HEAD) -n 1 | $(NAWK) '{print $$6}')
+  CC_MAJORVER :=$(call MajorVersion,$(CC_VER))
+  
+  # The VS2010 compiler is the same one used on both 32bit and 64bit
+  ifeq ($(CC_MAJORVER), 16)
+    COMPILER_NAME=Microsoft Visual Studio 10 (16.00.30319.01)
+    COMPILER_VERSION=VS2010
+    ifeq ($(WINDOWSSDKDIR),)
+      WINDOWSSDKDIR := $(error WINDOWSSDKDIR cannot be empty here)
+    endif
+    ifeq ($(ARCH_DATA_MODEL), 32)
+      _OTHER_TOOLS_BIN = $(WINDOWSSDKDIR)/Bin
+    else
+      ifeq ($(ARCH), ia64)
+        _OTHER_TOOLS_BIN = $(WINDOWSSDKDIR)/Bin/ia64
+      else
+        _OTHER_TOOLS_BIN = $(WINDOWSSDKDIR)/Bin/x64
+      endif
+    endif
+    RC     = $(_OTHER_TOOLS_BIN)/RC.Exe
+    REBASE = $(_OTHER_TOOLS_BIN)/ReBase.Exe
+    MT     = $(_OTHER_TOOLS_BIN)/mt.exe
+    MTL    = $(_OTHER_TOOLS_BIN)/midl.exe
+  endif
+  
+  # These variables can never be empty
+  ifndef COMPILER_PATH
+    COMPILER_PATH := $(error COMPILER_PATH cannot be empty here)
+  endif
+  ifndef COMPILER_VERSION
+    COMPILER_VERSION := $(error COMPILER_VERSION cannot be empty here)
+  endif
+  ifneq ($(COMPILER_VERSION),VS2010)
+    COMPILER_VERSION := $(error COMPILER_VERSION must be VS2010)
+  endif
+  
+  # Shared library generation flag
+  SHARED_LIBRARY_FLAG = -LD
+  # RSC is always same as RC (Not sure who uses this RSC variable)
+  RSC = $(RC)
+
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Compiler-sun.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,138 @@
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Sun Studio Compiler settings
+#
+
+# Sun Studio Compiler settings specific to Solaris
+ifeq ($(PLATFORM), solaris)
+  CC             ?= $(COMPILER_PATH)cc
+  CPP            ?= $(COMPILER_PATH)cc -E
+  CXX            ?= $(COMPILER_PATH)CC
+  LINT           ?= $(COMPILER_PATH)lint
+  # Option used to create a shared library
+  SHARED_LIBRARY_FLAG = -G
+  GCC =$(GCC_COMPILER_PATH)gcc
+endif
+
+# Sun Studio Compiler settings specific to Linux
+ifeq ($(PLATFORM), linux)
+  # This has not been tested
+  CC             ?= $(COMPILER_PATH)cc
+  CPP            ?= $(COMPILER_PATH)cc -E
+  CXX            ?= $(COMPILER_PATH)CC
+  LINT           ?= $(COMPILER_PATH)lint
+  # statically link libstdc++ before C++ ABI is stablized on Linux
+  STATIC_CXX     = true
+  ifeq ($(STATIC_CXX),true)
+    # CC always dynamically links libstdc++, even we use "-Wl,-Bstatic -lstdc++"
+    # We need to use cc to statically link the C++ runtime.
+    CXX            ?= $(COMPILER_PATH)cc
+  else
+    CXX            ?= $(COMPILER_PATH)CC
+  endif
+  # Option used to create a shared library
+  SHARED_LIBRARY_FLAG = -G
+endif
+
+# Get compiler version
+_CC_VER :=$(shell $(CC) -V 2>&1 | $(HEAD) -n 1)
+CC_VER  :=$(call GetVersion,"$(_CC_VER)")
+CC_MAJORVER  :=$(call MajorVersion,$(CC_VER))
+CC_MINORVER  :=$(call MinorVersion,$(CC_VER))
+
+# Name of compilers being used
+COMPILER_VERSION-5.7  = SS10
+COMPILER_NAME-5.7     = Sun Studio 10
+COMPILER_VERSION-5.8  = SS11
+COMPILER_NAME-5.8     = Sun Studio 11
+COMPILER_VERSION-5.9  = SS12
+COMPILER_NAME-5.9     = Sun Studio 12
+COMPILER_VERSION-5.10 = SS12u1
+COMPILER_NAME-5.10    = Sun Studio 12 Update 1
+COMPILER_VERSION-5.11 = OSS12u2
+COMPILER_NAME-5.11    = Oracle Solaris Studio 12 Update 2
+COMPILER_VERSION      = $(COMPILER_VERSION-$(CC_VER))
+COMPILER_NAME         = $(COMPILER_NAME-$(CC_VER))
+
+# Arch specific settings (determines type of .o files and instruction set)
+#  Starting in SS12 (5.9), the arch options changed.
+#  The assembler /usr/ccs/bin/as wants older SS11 (5.8) style options.
+#   Note: We need to have both 32 and 64 values at all times for awt Makefiles.
+#
+XARCH_OPTION_OLD/32 =
+XARCH_OPTION_OLD/64 =
+XARCH_OPTION_NEW/32 = -m32
+XARCH_OPTION_NEW/64 = -m64
+# Lint options are slightly different
+LINT_XARCH_OPTION_OLD/32 =
+LINT_XARCH_OPTION_OLD/64 =
+LINT_XARCH_OPTION_NEW/32 = -m32
+LINT_XARCH_OPTION_NEW/64 = -m64
+ifeq ($(ARCH_FAMILY), sparc)
+  ifdef VIS_NEEDED
+    XARCH_OPTION_OLD/32 += -xarch=v8plusa
+    XARCH_OPTION_OLD/64 += -xarch=v9a
+    XARCH_OPTION_NEW/32 += -xarch=sparcvis
+    XARCH_OPTION_NEW/64 += -xarch=sparcvis
+  else
+    # Someday this should change to improve optimization on UltraSPARC
+    #    and abandon v8, even change to sparcvis or sparcvis2, this
+    #    abandons machines like the SPARCstation 10.
+    #    Indications with jdk6 is that alacrity runs do not show a
+    #    big improvement using v8plus over v8, but other benchmarks might.
+    XARCH_OPTION_OLD/32 += -xarch=v8
+    XARCH_OPTION_OLD/64 += -xarch=v9
+    # Note that this new option (SS12+) effectively means v8plus
+    XARCH_OPTION_NEW/32 += -xarch=sparc
+    XARCH_OPTION_NEW/64 += -xarch=sparc
+  endif
+  LINT_XARCH_OPTION_OLD/64 += -Xarch=v9
+endif
+ifeq ($(ARCH_FAMILY), i586)
+  XARCH_OPTION_OLD/64      += -xarch=amd64
+  LINT_XARCH_OPTION_OLD/64 += -Xarch=amd64
+endif
+# Pick the options we want based on the compiler being used. (5.9 or newer)
+CC_59_OR_NEWER := \
+  $(shell expr $(CC_MAJORVER) \> 5 \| \
+      \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \>= 9 \) )
+ifeq ($(CC_59_OR_NEWER), 1)
+  XARCH_OPTION/32 = $(XARCH_OPTION_NEW/32)
+  XARCH_OPTION/64 = $(XARCH_OPTION_NEW/64)
+  LINT_XARCH_OPTION/32 = $(LINT_XARCH_OPTION_NEW/32)
+  LINT_XARCH_OPTION/64 = $(LINT_XARCH_OPTION_NEW/64)
+else
+  XARCH_OPTION/32 = $(XARCH_OPTION_OLD/32)
+  XARCH_OPTION/64 = $(XARCH_OPTION_OLD/64)
+  LINT_XARCH_OPTION/32 = $(LINT_XARCH_OPTION_OLD/32)
+  LINT_XARCH_OPTION/64 = $(LINT_XARCH_OPTION_OLD/64)
+endif
+XARCH_OPTION = $(XARCH_OPTION/$(ARCH_DATA_MODEL))
+LINT_XARCH_OPTION = $(LINT_XARCH_OPTION/$(ARCH_DATA_MODEL))
+# The /usr/ccs/bin/as assembler always wants the older SS11 (5.8) options.
+AS_XARCH_OPTION = $(XARCH_OPTION_OLD/$(ARCH_DATA_MODEL))
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-control.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,143 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Common variables used by all the Java makefiles.  This file should
+# not contain rules.
+#
+
+# WARNING: This file is shared with other components.
+#
+
+ifndef JDK_MAKE_SHARED_DIR
+  JDK_MAKE_SHARED_DIR = $(JDK_TOPDIR)/makefiles/common/shared
+endif
+
+ifndef HOTSPOT_TOPDIR
+  HOTSPOT_TOPDIR=$(TOPDIR)/hotspot
+endif
+ifndef LANGTOOLS_TOPDIR
+  LANGTOOLS_TOPDIR=$(TOPDIR)/langtools
+endif
+ifndef CORBA_TOPDIR
+  CORBA_TOPDIR=$(TOPDIR)/corba
+endif
+ifndef JAXP_TOPDIR
+  JAXP_TOPDIR=$(TOPDIR)/jaxp
+endif
+ifndef JAXWS_TOPDIR
+  JAXWS_TOPDIR=$(TOPDIR)/jaxws
+endif
+ifndef JDK_TOPDIR
+  JDK_TOPDIR=$(TOPDIR)/jdk
+endif
+ifndef INSTALL_TOPDIR
+  INSTALL_TOPDIR=$(TOPDIR)/install
+endif
+ifndef SPONSORS_TOPDIR
+  SPONSORS_TOPDIR=$(TOPDIR)/sponsors
+endif
+ifndef DEPLOY_TOPDIR
+  DEPLOY_TOPDIR=$(TOPDIR)/deploy
+endif
+
+# Get shared platform settings
+include $(JDK_MAKE_SHARED_DIR)/Platform.gmk
+
+# Default directory immediately above the "build" output directory (OUTPUTDIR)
+BUILD_PARENT_DIRECTORY=$(TOPDIR)
+
+# Get platform specific settings
+include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
+
+SRC_BUNDLEDIR       = $(OUTPUTDIR)/source-bundles
+ABS_SRC_BUNDLEDIR   = $(ABS_OUTPUTDIR)/source-bundles
+BIN_BUNDLEDIR       = $(OUTPUTDIR)/bundles
+BIN_DEMOS_BUNDLEDIR = $(OUTPUTDIR)/demos-bundles
+ABS_BIN_BUNDLEDIR   = $(ABS_OUTPUTDIR)/bundles
+
+dummy := $(shell $(MKDIR) -p $(BIN_BUNDLEDIR))
+dummy := $(shell $(MKDIR) -p $(BIN_DEMOS_BUNDLEDIR) )
+dummy := $(shell $(MKDIR) -p $(SRC_BUNDLEDIR) )
+
+TEMP_DIR = $(OUTPUTDIR)/tmp
+ABS_TEMP_DIR = $(ABS_OUTPUTDIR)/tmp
+
+dummy := $(shell $(MKDIR) -p $(TEMP_DIR))
+
+# The language version we want for this jdk build
+SOURCE_LANGUAGE_VERSION=7
+# The class version we want for this jdk build
+TARGET_CLASS_VERSION=7
+
+# The MESSAGE, WARNING and ERROR files are used to store sanity check and 
+# source check messages, warnings and errors. 
+export ERROR_FILE   := $(ABS_OUTPUTDIR)/sanityCheckErrors.txt
+export WARNING_FILE := $(ABS_OUTPUTDIR)/sanityCheckWarnings.txt
+export MESSAGE_FILE := $(ABS_OUTPUTDIR)/sanityCheckMessages.txt
+
+# source bundle generation definitions
+BUNDLE_DATE := $(shell $(DATE) '+%d_%b_%Y' | $(TR) "[A-Z]" "[a-z]")
+ifdef ALT_BUNDLE_DATE
+  BUNDLE_DATE := $(ALT_BUNDLE_DATE)
+endif
+
+# If the update version contains non-numeric characters, we need
+# to massage it into a numeric format.  Unfortunately, the
+# Windows VERSIONINFO resource that we stick in jvm.dll cannot
+# handle non-numeric characters.  We have to do this here because
+# Hotspot (nmake) cannot handle calculations.  So we use the
+# following formula:
+# COOKED_JDK_UPDATE_VERSION = JDK_UPDATE_VERSION * 10 + EXCEPTION_VERSION
+# 
+# Here are some examples:
+#     1.5.0    b01  ->  5,0,0,1
+#     1.5.0_10 b01  ->  5,0,100,1 
+#     1.4.2 b01     ->  4,2,0,1
+#     1.4.2_02 b01  ->  4,2,20,1
+#     1.4.2_02a b01 ->  4,2,21,1
+#     1.4.2_02b b01 ->  4,2,22,1
+ifdef JDK_UPDATE_VERSION
+  VTMP := $(shell $(ECHO) $(JDK_UPDATE_VERSION) | $(TR) "abcde" "12345")
+  CHAR1 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 1, 1);}')
+  CHAR2 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 2, 1);}')
+  CHAR3 := $(shell $(ECHO) $(VTMP) | $(NAWK) '{print substr($$1, 3, 1);}')
+  ifeq ($(CHAR3),)
+    CHAR3 := 0
+  endif
+  ifeq ($(CHAR1), 0)
+    COOKED_JDK_UPDATE_VERSION := $(CHAR2)$(CHAR3)
+  else
+    COOKED_JDK_UPDATE_VERSION := $(CHAR1)$(CHAR2)$(CHAR3)
+  endif
+endif
+
+ifneq ($(JDK_BUILD_NUMBER),)
+ COOKED_BUILD_NUMBER = $(shell $(ECHO) $(JDK_BUILD_NUMBER) \
+			       | $(SED) -e 's/^b//' | $(SED) -e 's/^0//')
+else
+ COOKED_BUILD_NUMBER = 0
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,249 @@
+#
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Common java/javac/jdk variables used by all the Java makefiles.
+# This file should not contain rules.
+#
+
+# WARNING: This file is shared with other workspaces.
+#          So when it includes other files, it must use JDK_TOPDIR.
+#
+
+-include $(SPEC)
+
+#
+# Memory related -J flags that all uses of java tools should use.
+#
+#JAVA_MEM_FLAGS   = -Xmx$(MAX_VM_MEMORY)m
+#ifeq ($(ARCH), ia64)
+  # Special flags for javac on ia64 to work around a VM problem with
+  #   bad code generation during inlining (what version had this problem?):
+  #   Suspect this may not be needed anymore.
+#  JAVA_MEM_FLAGS   += -Xms$(MAX_VM_MEMORY)m -XX:-Inline
+#else
+#  JAVA_MEM_FLAGS   += -Xms$(MIN_VM_MEMORY)m -XX:PermSize=32m -XX:MaxPermSize=160m
+#endif
+
+#
+# All java tools (javac, javah, and javadoc) run faster with certain java
+#    options, this macro should be used with all these tools.
+#    In particular, the client VM makes these tools run faster when
+#    it's available.
+#
+ADD_CLIENT_VM_OPTION = false
+ifeq ($(PLATFORM), solaris)
+  ADD_CLIENT_VM_OPTION = true
+else
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    ADD_CLIENT_VM_OPTION = true
+  endif
+endif
+
+# Options for hotspot to turn off printing of options with fastdebug version
+#   and creating the hotspot.log file.
+#JAVA_HOTSPOT_DISABLE_PRINT_VMOPTIONS = \
+#   -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput
+
+# JVM options
+ifeq ($(PLATFORM), macosx)
+  JAVA_JVM_FLAGS = $(JAVA_HOTSPOT_DISABLE_PRINT_VMOPTIONS) -Djava.awt.headless=true
+else
+  JAVA_JVM_FLAGS = $(JAVA_HOTSPOT_DISABLE_PRINT_VMOPTIONS)
+endif
+
+#ifeq ($(ADD_CLIENT_VM_OPTION), true)
+#  JAVA_JVM_FLAGS += -client
+#endif
+#ifdef USE_HOTSPOT_INTERPRETER_MODE
+#  JAVA_JVM_FLAGS += -Xint
+#endif
+
+# Various VM flags
+JAVA_TOOLS_FLAGS  = $(JAVA_JVM_FLAGS) $(JAVA_MEM_FLAGS)
+
+# The VM flags for javac
+JAVAC_JVM_FLAGS =
+
+# 64-bit builds require a larger thread stack size.
+#ifeq ($(ARCH_DATA_MODEL), 32)
+#  JAVAC_JVM_FLAGS    += -J-XX:ThreadStackSize=768
+#else
+#  JAVAC_JVM_FLAGS    += -J-XX:ThreadStackSize=1536
+#endif
+JAVAC_JVM_FLAGS    += $(JAVA_TOOLS_FLAGS:%=-J%)
+
+# The jar -J options are special, must be added at the end of the command line
+JAR_JFLAGS       = $(JAVA_TOOLS_FLAGS:%=-J%)
+
+# JAVA_TOOLS_DIR is the default location to find Java tools to run, if
+#    langtools is not available.
+#    This should be the latest promoted JDK javac.
+ifndef JAVA_TOOLS_DIR
+  JAVA_TOOLS_DIR = $(JDK_IMPORT_PATH)/bin
+endif
+
+#
+# Invoking the Java compiler.   In leaf makefiles, choose as follows:
+#  -- Use JAVAC if you want to take full control of what options get
+#     passed to javac.
+#  -- Use JAVAC_CMD if you want to take the defaults given to you.
+#
+
+ifndef DEBUG_CLASSFILES
+  ifeq ($(VARIANT), DBG)
+    DEBUG_CLASSFILES = true
+  endif
+endif
+JAVACFLAGS =
+ifeq ($(DEBUG_CLASSFILES),true)
+  JAVACFLAGS += -g
+endif
+ifeq ($(JAVAC_MAX_WARNINGS), true)
+  JAVAC_LINT_OPTIONS += -Xlint:all
+endif
+ifeq ($(JAVAC_WARNINGS_FATAL), true)
+  JAVACFLAGS  += -Werror
+endif
+
+# TODO: Workaround for CR 7063027. Remove -path eventually.
+JAVAC_LINT_OPTIONS += -Xlint:-path
+
+JAVACFLAGS += $(JAVAC_LINT_OPTIONS)
+
+#
+# Some licensees do not get the Security Source bundles.  We will
+# fall back on the prebuilt jce.jar so that we can do a best
+# attempt at building.  If sources exist, we always want to
+# build/use the most recent source instead of an older jce.jar, whether
+# built implicitly/explicitly.
+#
+ifeq ($(wildcard $(SHARE_SRC)/classes/javax/crypto/Cipher.java),)
+  JCEFLAGS = $(CLASSPATH_SEPARATOR)$(LIBDIR)/jce.jar
+endif
+
+# Add the source level
+SOURCE_LANGUAGE_VERSION = 7
+LANGUAGE_VERSION = -source $(SOURCE_LANGUAGE_VERSION)
+JAVACFLAGS  += $(LANGUAGE_VERSION)
+
+# Add the class version we want
+TARGET_CLASS_VERSION = 7
+CLASS_VERSION = -target $(TARGET_CLASS_VERSION)
+JAVACFLAGS  += $(CLASS_VERSION)
+JAVACFLAGS  += -encoding ascii
+JAVACFLAGS  += "-Xbootclasspath:$(CLASSBINDIR)$(JCEFLAGS)"
+JAVACFLAGS  += $(OTHER_JAVACFLAGS)
+
+# Needed for javah
+JAVAHFLAGS += -bootclasspath "$(CLASSBINDIR)$(JCEFLAGS)"
+
+# Needed for javadoc to ensure it builds documentation
+# against the newly built classes
+JAVADOCFLAGS += -bootclasspath $(CLASSBINDIR)
+
+# Needed for JAVADOC and BOOT_JAVACFLAGS
+NO_PROPRIETARY_API_WARNINGS = -XDignore.symbol.file=true
+
+# Langtools
+LANGTOOLS_DIST ?= $(ALT_LANGTOOLS_DIST)
+
+ifdef LANGTOOLS_DIST
+  JAVAC_JAR   = $(LANGTOOLS_DIST)/bootstrap/lib/javac.jar
+  JAVAH_JAR   = $(LANGTOOLS_DIST)/bootstrap/lib/javah.jar
+  JAVADOC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javadoc.jar
+  DOCLETS_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/doclets.jar
+  JAVAC_CMD   = $(BOOT_JAVA_CMD) \
+		"-Xbootclasspath/p:$(JAVAC_JAR)" \
+		-jar $(JAVAC_JAR) $(JAVACFLAGS)
+  JAVAH_CMD   = $(BOOT_JAVA_CMD) \
+		"-Xbootclasspath/p:$(JAVAH_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)"  \
+		-jar $(JAVAH_JAR) $(JAVAHFLAGS)
+  JAVADOC_CMD = $(BOOT_JAVA_CMD) \
+		"-Xbootclasspath/p:$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)$(CLASSPATH_SEPARATOR)$(DOCLETS_JAR)" \
+		-jar $(JAVADOC_JAR) $(JAVADOCFLAGS)
+else
+  # If no explicit tools, use boot tools (add VM flags in this case)
+  JAVAC_CMD     = $(UNCYGDRIVE) $(JAVA_TOOLS_DIR)/javac $(JAVAC_JVM_FLAGS) \
+		  $(JAVACFLAGS)
+  JAVAH_CMD     = $(UNCYGDRIVE) $(JAVA_TOOLS_DIR)/javah \
+		  $(JAVAHFLAGS)
+  JAVADOC_CMD   = $(UNCYGDRIVE) $(JAVA_TOOLS_DIR)/javadoc $(JAVA_TOOLS_FLAGS:%=-J%) \
+		  $(JAVADOCFLAGS)
+endif
+
+# Override of what javac to use (see deploy workspace)
+#ifdef JAVAC
+#  JAVAC_CMD     = $(JAVAC)
+#endif
+
+#
+# The bootstrap java compiler (defined as the javac in the ALT_BOOTDIR jdk).
+#   Will be used to compile java code used to build the jdk, e.g. class files
+#   created by this compiler will NOT become part of this built jdk, but just
+#   used to build this jdk, e.g. run with the java in the ALT_BOOTDIR jdk.
+#
+# The javac supplied with the LANGTOOLS_DIST should be used to build the
+#   classes that will be put into the built jdk. But note that this javac
+#   will use the ALT_BOOTDIR java runtime. Any classes created by the
+#   LANGTOOLS_DIST javac should not be run during this jdk build and indeed
+#   may not even run with the ALT_BOOTDIR jdk because they may be a newer
+#   class file version that the ALT_BOOTDIR jdk doesn't understand.
+#
+# The important observation here is that the built jdk is NOT run during
+#   the build. If the built jdk needs to be verified that it can build this
+#   same jdk, then it should be supplied to the build process as the ALT_BOOTDIR
+#   jdk, and this resulting built jdk should be compared to the first one.
+#   (They should be the same). Re-using this built jdk as the ALT_BOOTDIR
+#   jdk will be the only way and the recommeneded way to verify the built jdk
+#   can bootstrap itself.
+#
+
+# The javac options supplied to the boot javac is limited. This compiler
+#   should only be used to build the 'make/tools' sources, which are not
+#   class files that end up in the classes directory.
+BOOT_JAVACFLAGS += $(JAVAC_LINT_OPTIONS)
+ifeq ($(JAVAC_WARNINGS_FATAL), true)
+  BOOT_JAVACFLAGS  += -Werror
+endif
+
+BOOT_JAVACFLAGS  += -encoding ascii
+BOOT_JAR_JFLAGS += $(JAR_JFLAGS)
+
+BOOT_JAVACFLAGS  += $(NO_PROPRIETARY_API_WARNINGS)
+
+BOOT_JAVA_CMD      = $(UNCYGDRIVE) $(BOOTDIR)/bin/java $(JAVA_TOOLS_FLAGS)
+BOOT_JAVAC_CMD     = $(UNCYGDRIVE) $(BOOTDIR)/bin/javac $(JAVAC_JVM_FLAGS) $(BOOT_JAVACFLAGS)
+BOOT_JAR_CMD       = $(UNCYGDRIVE) $(BOOTDIR)/bin/jar
+BOOT_JARSIGNER_CMD = $(UNCYGDRIVE) $(BOOTDIR)/bin/jarsigner
+
+# Various tools we need to run (FIXUP: Are these the right ones?)
+NATIVE2ASCII    = $(UNCYGDRIVE) $(BOOTDIR)/bin/native2ascii $(JAVA_TOOLS_FLAGS:%=-J%)
+RMIC		= $(UNCYGDRIVE) $(BOOTDIR)/bin/rmic $(JAVA_TOOLS_FLAGS:%=-J%)
+IDLJ		= $(UNCYGDRIVE) $(BOOTDIR)/bin/idlj $(JAVA_TOOLS_FLAGS:%=-J%)
+
+# Should not be used
+#JAVA		= /should/not/be/used
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-javadoc.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,71 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Copyright year for beginning of Java and some of the apis
+#   (Needed when creating the javadocs)
+FIRST_COPYRIGHT_YEAR                = 1993
+DOMAPI_FIRST_COPYRIGHT_YEAR         = 2005
+MIRROR_FIRST_COPYRIGHT_YEAR         = 2004
+DOCLETAPI_FIRST_COPYRIGHT_YEAR      = 1993
+TAGLETAPI_FIRST_COPYRIGHT_YEAR      = 1993
+JDI_FIRST_COPYRIGHT_YEAR            = 1999
+JAAS_FIRST_COPYRIGHT_YEAR           = 1998
+JGSS_FIRST_COPYRIGHT_YEAR           = 2000
+SMARTCARDIO_FIRST_COPYRIGHT_YEAR    = 2005
+HTTPSERVER_FIRST_COPYRIGHT_YEAR     = 2005
+MGMT_FIRST_COPYRIGHT_YEAR           = 2003
+ATTACH_FIRST_COPYRIGHT_YEAR         = 2005
+JCONSOLE_FIRST_COPYRIGHT_YEAR       = 2006
+SCTPAPI_FIRST_COPYRIGHT_YEAR        = 2009
+TRACING_FIRST_COPYRIGHT_YEAR        = 2008
+TREEAPI_FIRST_COPYRIGHT_YEAR        = 2005
+JNLP_FIRST_COPYRIGHT_YEAR           = 1998
+PLUGIN2_FIRST_COPYRIGHT_YEAR        = 2007
+
+# Oracle name
+FULL_COMPANY_NAME = Oracle and/or its affiliates
+
+# Copyright address
+COMPANY_ADDRESS = 500 Oracle Parkway<br>Redwood Shores, CA 94065 USA.
+
+# The trademark symbol
+TRADEMARK = &trade;
+
+# Common copyright lines used
+#   The word "Copyright" might optionally be a link to the file cpyr.html.
+#   The first year of copyright may vary or not be available.
+#   The address to the company might be optional.
+COMMA:= ,
+EMPTY:=
+SPACE:=$(EMPTY) $(EMPTY)
+COPYRIGHT_SYMBOL = &\#x00a9;
+# Macro to construct the copyright line
+#   (The GNU make 3.78.1 "if" conditional is broken, fixed in GNU make 3.81)
+define CopyrightLine # optionalurl optionalfirstyear optionaladdress
+$(if $(strip $1),<a href="$(strip $1)">Copyright</a>,Copyright) \
+$(COPYRIGHT_SYMBOL) $(if $2,$2${COMMA},) $(COPYRIGHT_YEAR),\
+$(FULL_COMPANY_NAME). $3 All rights reserved.
+endef
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-linux.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,213 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for Linux.
+#
+
+# Default for COMPILER_WARNINGS_FATAL on Linux (C & C++ compiler warnings)
+ifndef COMPILER_WARNINGS_FATAL
+  COMPILER_WARNINGS_FATAL=false
+endif
+
+# Linux should use parallel compilation for best build times
+ifndef COMPILE_APPROACH
+  COMPILE_APPROACH = parallel
+endif
+
+# Indication that we are doing an incremental build.
+#    This may trigger the creation of make depend files.
+ifndef INCREMENTAL_BUILD
+  INCREMENTAL_BUILD = false
+endif
+
+# FullPath just makes sure it never ends with a / and no duplicates
+define FullPath
+$(shell cd $1 2> $(DEV_NULL) && pwd)
+endef
+
+# OptFullPath: Absolute path name of a dir that might not initially exist.
+define OptFullPath
+$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
+endef
+
+# Location on system where jdk installs might be
+USRJDKINSTANCES_PATH =/opt/java
+
+# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCOMMAND_PATH)" "undefined"
+  UNIXCOMMAND_PATH :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
+else
+  UNIXCOMMAND_PATH  = /bin/
+endif
+
+# USRBIN_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_USRBIN_PATH)" "undefined"
+  USRBIN_PATH :=$(call PrefixPath,$(ALT_USRBIN_PATH))
+else
+  USRBIN_PATH  = /usr/bin/
+endif
+
+# UNIXCCS_PATH: path to where the Solaris ported UNIX commands can be found
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCCS_PATH)" "undefined"
+  UNIXCCS_PATH :=$(call PrefixPath,$(ALT_UNIXCCS_PATH))
+else
+  UNIXCCS_PATH = /usr/ccs/bin/
+endif
+
+# SLASH_JAVA: location of all network accessable files
+ifdef ALT_SLASH_JAVA
+  SLASH_JAVA  :=$(ALT_SLASH_JAVA)
+else
+  SLASH_JAVA  := $(call DirExists,/java,/java,/NOT-SET)
+endif
+
+# JDK_DEVTOOLS_DIR: common path for all the java devtools
+ifdef ALT_JDK_DEVTOOLS_DIR
+  JDK_DEVTOOLS_DIR  =$(ALT_JDK_DEVTOOLS_DIR)
+else
+  JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools
+endif
+
+# COMPILER_PATH: path to where the compiler and tools are installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_COMPILER_PATH)" "undefined"
+  COMPILER_PATH :=$(call PrefixPath,$(ALT_COMPILER_PATH))
+else
+  COMPILER_PATH  =/usr/bin/
+endif
+
+# OPENWIN_HOME: path to where the X11 environment is installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq ($(ALT_OPENWIN_HOME),)
+  OPENWIN_HOME :=$(call PrefixPath,$(ALT_OPENWIN_HOME))
+else
+  OPENWIN_HOME  ?=$(SYS_ROOT)/usr/X11R6/
+endif
+
+# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
+  DEVTOOLS_PATH :=$(call PrefixPath,$(ALT_DEVTOOLS_PATH))
+else
+  DEVTOOLS_PATH =/usr/bin/
+endif
+
+# _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
+# _BOOTDIR2: Second choice
+ifndef ALT_BOOTDIR
+  _BOOTDIR1  =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
+  _BOOTDIR2  =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
+endif
+
+# Always build headless on Linux
+BUILD_HEADLESS = true
+LIBM=-lm
+
+# GCC29_COMPILER_PATH: is the path to where the gcc 2.9 compiler is installed
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifdef ALT_GCC29_COMPILER_PATH
+  GCC29_COMPILER_PATH :=$(call PrefixPath,$(ALT_GCC29_COMPILER_PATH))
+else
+  GCC29_COMPILER_PATH = $(JDK_DEVTOOLS_DIR)/$(PLATFORM)/gcc29/usr/
+endif
+
+_CUPS_HEADERS_PATH=/usr/include
+
+# Import JDK images allow for partial builds, components not built are
+#    imported (or copied from) these import areas when needed.
+
+# BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for 
+#   multiple platforms, e.g. windows-i586, solaris-sparc, linux-586, etc.
+ifdef ALT_BUILD_JDK_IMPORT_PATH
+  BUILD_JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH))
+else
+  BUILD_JDK_IMPORT_PATH   = $(PROMOTED_BUILD_BINARIES)
+endif
+
+# JDK_IMPORT_PATH: location of JDK install tree (this version) to import
+ifdef ALT_JDK_IMPORT_PATH
+  JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_JDK_IMPORT_PATH))
+else
+  JDK_IMPORT_PATH   = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT)
+endif
+
+# HOTSPOT_IMPORT_PATH: location of hotspot pre-built files
+ifdef ALT_HOTSPOT_IMPORT_PATH
+  HOTSPOT_IMPORT_PATH :=$(call FullPath,$(ALT_HOTSPOT_IMPORT_PATH))
+else
+  HOTSPOT_IMPORT_PATH ?=$(JDK_IMPORT_PATH)
+endif
+
+# HOTSPOT_CLIENT_PATH: location of client jvm library file.
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ifdef ALT_HOTSPOT_CLIENT_PATH
+    HOTSPOT_CLIENT_PATH :=$(call FullPath,$(ALT_HOTSPOT_CLIENT_PATH))
+  else
+    HOTSPOT_CLIENT_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/client
+  endif
+endif
+
+# HOTSPOT_SERVER_PATH: location of server jvm library file.
+ifdef ALT_HOTSPOT_SERVER_PATH
+  HOTSPOT_SERVER_PATH :=$(call FullPath,$(ALT_HOTSPOT_SERVER_PATH))
+else
+  HOTSPOT_SERVER_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/server
+endif
+
+# Special define for checking the binaries
+
+# Debug builds should downgrade warnings to just info
+MAPFILE_WARNING-DBG=INFO
+MAPFILE_WARNING-OPT=WARNING
+MAPFILE_WARNING-=WARNING
+MAPFILE_WARNING=$(MAPFILE_WARNING-$(VARIANT))
+
+# Macro to check it's input file for banned dependencies and verify the
+#   binary built properly. Relies on process exit code.
+ifndef CROSS_COMPILE_ARCH
+define binary_file_verification # binary_file
+( \
+  $(ECHO) "Checking for mapfile use in: $1" && \
+  if [ "`$(NM) -D -g --defined-only $1 | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
+    $(ECHO) "$(MAPFILE_WARNING): File was not built with a mapfile: $1"; \
+  fi && \
+  $(ECHO) "Library loads for: $1" && \
+  $(LDD) $1 && \
+  $(ECHO) "RUNPATH for: $1" && \
+  ( $(READELF) -d $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
+)
+endef
+else
+define binary_file_verification 
+( \
+  $(ECHO) "Skipping binary file verification for cross-compile build" \
+)
+endef
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,252 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for Bsd.
+#
+
+# Default for COMPILER_WARNINGS_FATAL on Bsd (C & C++ compiler warnings)
+ifndef COMPILER_WARNINGS_FATAL
+  COMPILER_WARNINGS_FATAL=false
+endif
+
+# Bsd should use parallel compilation for best build times
+ifndef COMPILE_APPROACH
+  COMPILE_APPROACH = parallel
+endif
+
+# Indication that we are doing an incremental build.
+#    This may trigger the creation of make depend files.
+ifndef INCREMENTAL_BUILD
+  INCREMENTAL_BUILD = false
+endif
+
+# FullPath just makes sure it never ends with a / and no duplicates
+define FullPath
+$(shell cd $1 2> $(DEV_NULL) && pwd)
+endef
+
+# OptFullPath: Absolute path name of a dir that might not initially exist.
+define OptFullPath
+$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
+endef
+
+# Location on system where jdk installs might be
+USRJDKINSTANCES_PATH = $(PACKAGE_PATH)
+
+# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCOMMAND_PATH)" "undefined"
+  UNIXCOMMAND_PATH :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
+else
+  UNIXCOMMAND_PATH  = /bin/
+endif
+
+# USRBIN_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_USRBIN_PATH)" "undefined"
+  USRBIN_PATH :=$(call PrefixPath,$(ALT_USRBIN_PATH))
+else
+  USRBIN_PATH  = /usr/bin/
+endif
+
+# UNIXCCS_PATH: path to where the Solaris ported UNIX commands can be found
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCCS_PATH)" "undefined"
+  UNIXCCS_PATH :=$(call PrefixPath,$(ALT_UNIXCCS_PATH))
+else
+  UNIXCCS_PATH = /usr/ccs/bin/
+endif
+
+# SLASH_JAVA: location of all network accessable files
+ifdef ALT_SLASH_JAVA
+  SLASH_JAVA  :=$(ALT_SLASH_JAVA)
+else
+  SLASH_JAVA  := $(call DirExists,/java,/java,/NOT-SET)
+endif
+
+# JDK_DEVTOOLS_DIR: common path for all the java devtools
+ifdef ALT_JDK_DEVTOOLS_DIR
+  JDK_DEVTOOLS_DIR  =$(ALT_JDK_DEVTOOLS_DIR)
+else
+  JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools
+endif
+
+# COMPILER_PATH: path to where the compiler and tools are installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_COMPILER_PATH)" "undefined"
+  COMPILER_PATH :=$(call PrefixPath,$(ALT_COMPILER_PATH))
+else
+ ifeq ($(OS_VENDOR), Apple)
+  ifndef DEVELOPER_DIR
+   DEVELOPER_DIR = $(shell /usr/bin/xcode-select -print-path)/usr/bin/
+  endif
+  
+  COMPILER_PATH  := $(call DirExists,$(DEVELOPER_DIR),/usr/bin/,/NOT-SET)
+ else
+  COMPILER_PATH  =/usr/bin/
+ endif
+endif
+
+# OPENWIN_HOME: path to where the X11 environment is installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq ($(ALT_OPENWIN_HOME),)
+  OPENWIN_HOME :=$(call PrefixPath,$(ALT_OPENWIN_HOME))
+else
+  OPENWIN_HOME  ?=$(X11_PATH)
+endif
+
+# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
+  DEVTOOLS_PATH :=$(call PrefixPath,$(ALT_DEVTOOLS_PATH))
+else
+  DEVTOOLS_PATH =$(PACKAGE_PATH)/bin/
+endif
+
+# _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
+# _BOOTDIR2: Second choice
+ifndef ALT_BOOTDIR
+  _BOOTDIR1  =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
+  _BOOTDIR2  =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
+endif
+
+# Always build headless on Bsd
+BUILD_HEADLESS = true
+LIBM=-lm
+
+ifeq ($(OS_VENDOR), Apple)
+  _CUPS_HEADERS_PATH=/usr/include
+else
+  _CUPS_HEADERS_PATH=$(PACKAGE_PATH)/include
+endif
+
+# Import JDK images allow for partial builds, components not built are
+#    imported (or copied from) these import areas when needed.
+
+# BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for 
+#   multiple platforms, e.g. windows-i586, solaris-sparc, bsd-586, etc.
+ifdef ALT_BUILD_JDK_IMPORT_PATH
+  BUILD_JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH))
+else
+  BUILD_JDK_IMPORT_PATH   = $(PROMOTED_BUILD_BINARIES)
+endif
+BUILD_JDK_IMPORT_PATH:=$(call AltCheckValue,BUILD_JDK_IMPORT_PATH)
+
+# JDK_IMPORT_PATH: location of JDK install tree (this version) to import
+ifdef ALT_JDK_IMPORT_PATH
+  JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_JDK_IMPORT_PATH))
+else
+  JDK_IMPORT_PATH   = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT)
+endif
+JDK_IMPORT_PATH:=$(call AltCheckValue,JDK_IMPORT_PATH)
+
+# HOTSPOT_IMPORT_PATH: location of hotspot pre-built files
+ifdef ALT_HOTSPOT_IMPORT_PATH
+  HOTSPOT_IMPORT_PATH :=$(call FullPath,$(ALT_HOTSPOT_IMPORT_PATH))
+else
+  HOTSPOT_IMPORT_PATH ?=$(JDK_IMPORT_PATH)
+endif
+HOTSPOT_IMPORT_PATH:=$(call AltCheckValue,HOTSPOT_IMPORT_PATH)
+
+# HOTSPOT_CLIENT_PATH: location of client jvm library file.
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ifdef ALT_HOTSPOT_CLIENT_PATH
+    HOTSPOT_CLIENT_PATH :=$(call FullPath,$(ALT_HOTSPOT_CLIENT_PATH))
+  else
+    HOTSPOT_CLIENT_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/client
+  endif
+  HOTSPOT_CLIENT_PATH:=$(call AltCheckValue,HOTSPOT_CLIENT_PATH)
+endif
+
+# HOTSPOT_SERVER_PATH: location of server jvm library file.
+ifdef ALT_HOTSPOT_SERVER_PATH
+  HOTSPOT_SERVER_PATH :=$(call FullPath,$(ALT_HOTSPOT_SERVER_PATH))
+else
+  HOTSPOT_SERVER_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/server
+endif
+HOTSPOT_SERVER_PATH:=$(call AltCheckValue,HOTSPOT_SERVER_PATH)
+
+# Special define for checking the binaries
+
+# Debug builds should downgrade warnings to just info
+MAPFILE_WARNING-DBG=INFO
+MAPFILE_WARNING-OPT=WARNING
+MAPFILE_WARNING-=WARNING
+MAPFILE_WARNING=$(MAPFILE_WARNING-$(VARIANT))
+
+# Macro to check it's input file for banned dependencies and verify the
+#   binary built properly. Relies on process exit code.
+ifndef CROSS_COMPILE_ARCH
+ifeq ($(OS_VENDOR), Apple)
+define binary_file_verification # binary_file
+( \
+  $(ECHO) "Checking for mapfile use in: $1" && \
+  if [ "`$(NM) -g $1 | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
+    $(ECHO) "WARNING: File was not built with a mapfile: $1"; \
+  fi && \
+  $(ECHO) "Library loads for: $1" && \
+  $(OTOOL) -L $1 && \
+  $(ECHO) "RUNPATH for: $1" && \
+  ( $(OTOOL) -l $1 | $(EGREP) 'path ' ) \
+) || true
+endef
+else
+ifeq ($(OS_VENDOR), OpenBSD)
+define binary_file_verification # binary_file
+( \
+  $(ECHO) "Checking for mapfile use in: $1" && \
+  if [ "`$(OBJDUMP) -T $1 | $(EGREP) '[0-9a-f]* g *DF \.text.*SUNWprivate'`" = "" ] ; then \
+    $(ECHO) "$(MAPFILE_WARNING): File was not built with a mapfile: $1"; \
+  fi && \
+  $(ECHO) "Library loads for: $1" && \
+  $(LDD) $1 && \
+  $(ECHO) "RUNPATH for: $1" && \
+  ( $(READELF) -d $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
+) || true
+endef
+else
+define binary_file_verification # binary_file
+( \
+  $(ECHO) "Checking for mapfile use in: $1" && \
+  if [ "`$(NM) -D -g --defined-only $1 | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
+    $(ECHO) "$(MAPFILE_WARNING): File was not built with a mapfile: $1"; \
+  fi && \
+  $(ECHO) "Library loads for: $1" && \
+  $(LDD) $1 && \
+  $(ECHO) "RUNPATH for: $1" && \
+  ( $(READELF) -d $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
+)
+endef
+endif # OS_VENDOR == OpenBSD
+endif # OS_VENDOR == Apple
+else
+define binary_file_verification 
+( \
+  $(ECHO) "Skipping binary file verification for cross-compile build" \
+)
+endef
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-solaris.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,239 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for Solaris.
+#
+
+# Default for COMPILER_WARNINGS_FATAL on Solaris (C & C++ compiler warnings)
+ifndef COMPILER_WARNINGS_FATAL
+  COMPILER_WARNINGS_FATAL=false
+endif
+
+# Solaris should use parallel compilation for best build times
+ifndef COMPILE_APPROACH
+  COMPILE_APPROACH = parallel
+endif
+
+# Indication that we are doing an incremental build.
+#    This may trigger the creation of make depend files.
+ifndef INCREMENTAL_BUILD
+  INCREMENTAL_BUILD = false
+endif
+
+# FullPath just makes sure it never ends with a / and no duplicates
+define FullPath
+$(shell cd $1 2> $(DEV_NULL) && pwd)
+endef
+
+# OptFullPath: Absolute path name of a dir that might not initially exist.
+define OptFullPath
+$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
+endef
+
+# Location on system where jdk installs might be
+USRJDKINSTANCES_PATH =/usr/jdk/instances
+
+# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCOMMAND_PATH)" "undefined"
+  UNIXCOMMAND_PATH :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
+else
+  UNIXCOMMAND_PATH  = /usr/bin/
+endif
+
+# UNIXCCS_PATH: path to where the less common UNIX commands can be found
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_UNIXCCS_PATH)" "undefined"
+  UNIXCCS_PATH :=$(call PrefixPath,$(ALT_UNIXCCS_PATH))
+else
+  UNIXCCS_PATH = /usr/ccs/bin/
+endif
+
+# SLASH_JAVA: location of all network accessable files
+ifdef ALT_SLASH_JAVA
+  SLASH_JAVA  :=$(ALT_SLASH_JAVA)
+else
+  SLASH_JAVA  := $(call DirExists,/java,/java,/NOT-SET)
+endif
+
+# JDK_DEVTOOLS_DIR: common path for all the java devtools
+ifdef ALT_JDK_DEVTOOLS_DIR
+  JDK_DEVTOOLS_DIR  =$(ALT_JDK_DEVTOOLS_DIR)
+else
+  JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools
+endif
+
+# COMPILER_PATH: path to where the compiler and tools are installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_COMPILER_PATH)" "undefined"
+  COMPILER_PATH :=$(call PrefixPath,$(ALT_COMPILER_PATH))
+else
+  # If the place where we keep a set of Sun Studio compilers doesn't exist,
+  #  try and use /opt/SUNWspro, the default location for the SS compilers.
+  #  (DirExists checks for this path twice, an automount double check)
+  _SUNSTUDIO_SET_ROOT=$(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/SUNWspro
+  SUNSTUDIO_SET_ROOT:=$(call DirExists,$(_SUNSTUDIO_SET_ROOT),$(_SUNSTUDIO_SET_ROOT),)
+  ifneq ($(SUNSTUDIO_SET_ROOT),)
+    COMPILER_PATH =$(SUNSTUDIO_SET_ROOT)/$(REQUIRED_COMPILER_VERSION)/bin/
+  else
+    COMPILER_PATH =/opt/SUNWspro/bin/
+  endif
+endif
+
+# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
+  DEVTOOLS_PATH :=$(call PrefixPath,$(ALT_DEVTOOLS_PATH))
+else
+  ifdef ALT_JDK_DEVTOOLS_DIR
+    DEVTOOLS_PATH =$(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/bin/
+  else
+    ifdef OPENJDK
+      DEVTOOLS_PATH = /usr/bin/
+    else
+      DEVTOOLS_PATH =$(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/bin/
+    endif
+  endif
+endif
+
+# _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
+# _BOOTDIR2: Second choice
+ifndef ALT_BOOTDIR
+  _BOOTDIR1  =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
+  _BOOTDIR2  =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
+endif
+
+# GCC_COMPILER_PATH: path to where the gcc/g++ compiler and tools are installed
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifneq "$(origin ALT_GCC_COMPILER_PATH)" "undefined"
+  GCC_COMPILER_PATH :=$(call PrefixPath,$(ALT_GCC_COMPILER_PATH))
+else
+  GCC_COMPILER_PATH = $(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/gnucc/bin/
+endif
+
+
+# Always build headless on Solaris
+BUILD_HEADLESS = true
+
+_CUPS_HEADERS_PATH=/opt/sfw/cups/include
+
+# Import JDK images allow for partial builds, components not built are
+#    imported (or copied from) these import areas when needed.
+
+# BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for 
+#   multiple platforms, e.g. windows-i586, solaris-sparc, linux-586, etc.
+ifdef ALT_BUILD_JDK_IMPORT_PATH
+  BUILD_JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH))
+else
+  BUILD_JDK_IMPORT_PATH   = $(PROMOTED_BUILD_BINARIES)
+endif
+
+# JDK_IMPORT_PATH: location of previously built JDK (this version) to import
+ifdef ALT_JDK_IMPORT_PATH
+  JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_JDK_IMPORT_PATH))
+else
+  JDK_IMPORT_PATH   = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT)
+endif
+
+# HOTSPOT_IMPORT_PATH: location of hotspot pre-built files
+ifdef ALT_HOTSPOT_IMPORT_PATH
+  HOTSPOT_IMPORT_PATH :=$(call FullPath,$(ALT_HOTSPOT_IMPORT_PATH))
+else
+  HOTSPOT_IMPORT_PATH ?=$(JDK_IMPORT_PATH)
+endif
+
+# HOTSPOT_CLIENT_PATH: location of client jvm library file.
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ifdef ALT_HOTSPOT_CLIENT_PATH
+    HOTSPOT_CLIENT_PATH :=$(call FullPath,$(ALT_HOTSPOT_CLIENT_PATH))
+  else
+    HOTSPOT_CLIENT_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/client
+  endif
+endif
+
+# HOTSPOT_SERVER_PATH: location of server jvm library file.
+ifdef ALT_HOTSPOT_SERVER_PATH
+  HOTSPOT_SERVER_PATH :=$(call FullPath,$(ALT_HOTSPOT_SERVER_PATH))
+else
+  HOTSPOT_SERVER_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/server
+endif
+
+# Special define for checking the binaries
+
+# Debug builds should downgrade warnings to just info
+MAPFILE_WARNING-DBG=INFO
+MAPFILE_WARNING-OPT=WARNING
+MAPFILE_WARNING-=WARNING
+MAPFILE_WARNING=$(MAPFILE_WARNING-$(VARIANT))
+
+# Some libraries do not have mapfiles for multiple reasons.
+#   These libraries for sparc and sparcv9 are exceptions to the mapfile rule:
+#     libjdgaSUNWafb.so
+#     libjdgaSUNWcg6.so
+#     libjdgaSUNWffb.so
+#     libjdgaSUNWm64.so
+#     libxinerama.so
+#   The library libJdbcOdbc.so has also been given an exception.
+#   The JNI/JVMTI demo libraries are also missing mapfiles, no exceptions yet.
+ifeq ($(ARCH_FAMILY),sparc)
+  MAPFILE_EXCEPTIONS = \
+    (libJdbcOdbc|libjdgaSUNWafb|libjdgaSUNWcg6|libjdgaSUNWffb|libjdgaSUNWm64|libxinerama)
+else
+  MAPFILE_EXCEPTIONS = (libJdbcOdbc)
+endif
+
+# Macro to check it's input file for banned dependencies and verify the
+#   binary built properly. Relies on process exit code.
+ifndef CROSS_COMPILE_ARCH
+ifneq (,$(DUMP))
+define binary_file_verification # binary_file
+( \
+  $(ECHO) "Checking for mapfile use in: $1" && \
+  if [ "`$(ECHO) $(basename $(notdir $1)) | $(EGREP) '$(MAPFILE_EXCEPTIONS)'`" = "" \
+       -a "`$(NM) -g -D $1 | $(EGREP) -v 'UNDEF' | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
+    $(ECHO) "$(MAPFILE_WARNING): File was not built with a mapfile: $1"; \
+  fi && \
+  $(ECHO) "Library loads for: $1" && \
+  $(LDD) $1 && \
+  $(ECHO) "RUNPATH for: $1" && \
+  ( $(DUMP) -L -v $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
+)
+endef
+else
+define binary_file_verification 
+( \
+  $(ECHO) "Skipping binary file verification since no dump command found" \
+)
+endef
+endif
+else
+define binary_file_verification 
+( \
+  $(ECHO) "Skipping binary file verification for cross-compile build" \
+)
+endef
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-utils.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,2 @@
+# Purposely empty for now, should be removed eventually.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-versions.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,215 @@
+#
+# Copyright (c) 2009, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# WARNING: This file is shared with other workspaces.
+#
+
+# This file needs these set: PLATFORM, ARCH_FAMILY, and ARCH_DATA_MODEL.
+
+# Windows uses Microsoft compilers by default
+ifeq ($(PLATFORM), windows)
+  override CC_VERSION = msvc
+endif
+
+# Solaris uses Sun Studio compilers by default
+ifeq ($(PLATFORM), solaris)
+  override CC_VERSION = sun
+endif
+
+# Linux uses GNU compilers by default
+ifeq ($(PLATFORM), linux)
+  override CC_VERSION = gcc
+endif
+
+# Mac OS X uses LLVM by default
+ifeq ($(PLATFORM), macosx)
+  override CC_VERSION = llvm
+endif
+
+##########################################################################
+#
+# List of JDK official minimum, expected, or required versions:
+#
+# REQUIRED_ALSA_VERSION
+#   Linux only: The ALSA sound library version expected.
+#
+# REQUIRED_ANT_VER
+#   The minimum 'ant' version.
+#
+# REQUIRED_BOOT_VER
+#   The minimum boot jdk version.
+#
+# REQUIRED_CC_VER
+#   The primary C compiler version expected.
+#
+# REQUIRED_COMPILER_NAME
+#   The long descriptive name of the compiler we should use
+#
+# REQUIRED_COMPILER_VERSION
+#   The one word name that identifies the compilers being used.
+#
+# REQUIRED_CYGWIN_VER
+#   Windows only: If CYGWIN is used, the minimum CYGWIN version.
+#
+# REQUIRED_DXSDK_VER
+#   Windows only: The version of DirectX SDK expected.
+#
+# REQUIRED_FREETYPE_VERSION
+#   If we are using freetype, the freetype version expected.
+#
+# REQUIRED_GCC_VER
+#   Solaris and Linux only. The required version of gcc/g++ for the legacy OJI plugin.
+#
+# REQUIRED_LINK_VER
+#   Windows only: The version of link.exe expected.
+#
+# REQUIRED_MAKE_VER
+#   The minimum version of GNU make.
+#
+# REQUIRED_MKS_VER
+#   Windows only: If MKS used instead of CYGWIN, the minimum version of MKS.
+#
+# REQUIRED_OS_VARIANT_NAME
+#   The OS variation name required.
+#     Solaris: Solaris or OpenSolaris
+#     Windows: Windows2000, WindowsXP, Windows2003, etc.
+#     Linux: Fedora, RedHat, SuSE, Ubuntu, etc.
+#
+# REQUIRED_OS_VARIANT_VERSION
+#   The version number associated with the above OS variant name.
+#     Solaris: output of uname -r
+#     Windows: 5.0 for Windows2000, 5.1 for WindowsXP, 5.2 for Windows2003, etc.
+#     Linux: number for the variant, e.g. 9 for Fedora 9
+#
+# REQUIRED_OS_VERSION
+#   The formal OS version number.
+#     Solaris & Windows: same as REQUIRED_OS_VARIANT_VERSION
+#     Linux: the kernel version, or output of uname -r
+#
+# REQUIRED_UNZIP_VER
+#   The minimum version of unzip.
+#
+# REQUIRED_ZIP_VER
+#   The minimum version of unzip.
+#
+###########
+#
+# Differences in the build platform from these versions may trigger warnings
+#   messages during the sanity checking when building the JDK.
+#
+# When building the OpenJDK most of these required or expected  versions are 
+#  ignored or allowed to vary widely to accomodate the many build situations
+#  of the OpenJDK.
+#
+##########################################################################
+
+# Solaris specific
+ifeq ($(PLATFORM), solaris)
+  REQUIRED_OS_NAME            = SunOS
+  REQUIRED_OS_VERSION         = 5.10
+  REQUIRED_OS_VARIANT_NAME    = Solaris
+  REQUIRED_OS_VARIANT_VERSION = $(REQUIRED_OS_VERSION)
+  REQUIRED_COMPILER_NAME      = Sun Studio 12 Update 1
+  REQUIRED_COMPILER_VERSION   = SS12u1
+  # Cross-compilation compiler versions are target specific
+  # so don't set a required version if cross-compiling
+  ifndef CROSS_COMPILE_ARCH
+    ifeq ($(CC_VERSION),sun)
+      REQUIRED_CC_VER           = 5.10
+    endif
+    ifeq ($(CC_VERSION),gcc)
+      REQUIRED_CC_VER           = 3.4.3
+    endif
+  endif
+  REQUIRED_GCC_VER            = 2.95.2
+endif
+
+# Linux specific
+ifeq ($(PLATFORM), linux)
+  REQUIRED_OS_NAME            = Linux
+  REQUIRED_OS_VERSION         = 2.6
+  REQUIRED_OS_VARIANT_NAME    = Fedora
+  REQUIRED_OS_VARIANT_VERSION = 9
+  REQUIRED_ALSA_VERSION       = 0.9.1
+  REQUIRED_COMPILER_NAME      = GCC4
+  REQUIRED_COMPILER_VERSION   = GCC4
+  REQUIRED_GCC_VER            = 2.95
+  # Cross-compilation compiler versions are target specific
+  # so don't set a required version if cross-compiling
+  ifndef CROSS_COMPILE_ARCH
+    ifeq ($(CC_VERSION),gcc)
+      REQUIRED_CC_VER           = 4.3.0
+    endif
+    ifeq ($(CC_VERSION),sun)
+      REQUIRED_CC_VER           = 5.10
+    endif
+  endif
+endif
+
+# Mac specific
+ifeq ($(PLATFORM), macosx)
+  REQUIRED_OS_NAME            = Darwin
+  REQUIRED_OS_VERSION         = 11.2
+  REQUIRED_OS_VARIANT_NAME    = MacOSX
+  REQUIRED_OS_VARIANT_VERSION = 10.7.2
+  REQUIRED_COMPILER_NAME      = GCC4
+  REQUIRED_COMPILER_VERSION   = GCC4
+  REQUIRED_CC_VER             = 4.2.1
+endif
+
+# Windows specific
+ifeq ($(PLATFORM), windows)
+  REQUIRED_OS_NAME            = Windows
+  ifeq ($(ARCH_DATA_MODEL),64)
+    REQUIRED_OS_VERSION       = 5.2
+    REQUIRED_OS_VARIANT_NAME  = Windows2003
+  else
+    REQUIRED_OS_VERSION       = 5.1
+    REQUIRED_OS_VARIANT_NAME  = WindowsXP
+  endif
+  REQUIRED_OS_VARIANT_VERSION = $(REQUIRED_OS_VERSION)
+  REQUIRED_CYGWIN_VER         = 4.0
+  REQUIRED_MKS_VER            = 6.1
+  REQUIRED_DXSDK_VER          = 0x0900
+  ifeq ($(CC_VERSION),msvc)
+    REQUIRED_COMPILER_NAME    = Visual Studio 10
+    REQUIRED_COMPILER_VERSION = VS2010
+    REQUIRED_CC_VER           = 16.00.30319.01
+    REQUIRED_LINK_VER         = 10.00.30319.01
+  endif
+  ifeq ($(CC_VERSION),gcc)
+    REQUIRED_CC_VER           = 3.4.3
+  endif
+endif
+
+# Generic
+REQUIRED_ANT_VER          = 1.7.1
+REQUIRED_BOOT_VER         = 1.7
+REQUIRED_FREETYPE_VERSION = 2.3.0
+REQUIRED_MAKE_VER         = 3.81
+REQUIRED_UNZIP_VER        = 5.12
+REQUIRED_ZIP_VER          = 2.2
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs-windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,696 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for Windows.
+#
+
+# Default for COMPILER_WARNINGS_FATAL on Windows (C++ compiler warnings)
+#    Level: Default is 3, 0 means none, 4 is the most but may be unreliable
+#    Some makefiles may have set this to 0 to turn off warnings completely,
+#    which also effectively creates a COMPILER_WARNINGS_FATAL=false situation.
+#    Program.gmk may turn this down to 2 (building .exe's).
+#    Windows 64bit platforms are less likely to be warning free.
+#    Historically, Windows 32bit builds should be mostly warning free.
+#    VS2010 introduced a large number of security warnings that are off by
+#    default but will be turned back on with SHOW_ALL_WARNINGS=true.
+ifndef COMPILER_WARNING_LEVEL
+  COMPILER_WARNING_LEVEL=3
+endif
+ifndef COMPILER_WARNINGS_FATAL
+  COMPILER_WARNINGS_FATAL=false
+endif
+ifndef SHOW_ALL_WARNINGS
+  SHOW_ALL_WARNINGS = false
+endif
+
+# Windows should use parallel compilation for best build times
+ifndef COMPILE_APPROACH
+  COMPILE_APPROACH = normal
+endif
+
+# Indication that we are doing an incremental build.
+#    This may trigger the creation of make depend files.
+#    (This may not be working on windows yet, always force to false.)
+override INCREMENTAL_BUILD = false
+
+# WARNING: This is extremely touch stuff, between CYGWIN vs. MKS and all
+#          variations of MKS and CYGWIN releases, and 32bit vs 64bit,
+#          this file can give you nightmares.
+#
+# Notes:
+#   Keep all paths in the windows "mixed" style except CYGWIN UNXIXCOMMAND_PATH.
+#   Use of PrefixPath is critical, some variables must end with / (see NOTE).
+#   Use of quotes is critical due to possible spaces in paths coming from
+#     the environment variables, be careful.
+#   First convert \ to / with subst, keep it quoted due to blanks, then
+#     use cygpath -s or dosname -s to get the short non-blank name.
+#   If the MKS is old and doesn't have a dosname -s, you will be forced
+#     to set ALT variables with the short non-space directory names.
+#     If dosname doesn't appear to work, we won't use it.
+#     The dosname utility also wants to accept stdin if it is not supplied
+#     any path on the command line, this is really dangerous when using
+#     make variables that can easily become empty, so I use:
+#        echo $1 | dosname -s     instead of    dosname -s $1
+#     to prevent dosname from hanging up the make process when $1 is empty.
+#     The cygpath utility does not have this problem.
+#   The ALT values should never really have spaces or use \.
+#   Suspect these environment variables to have spaces and/or \ characters:
+#     SYSTEMROOT, SystemRoot, WINDIR, windir, PROGRAMFILES, ProgramFiles,
+#     DXSDK_DIR, MSTOOLS, Mstools, MSSDK, MSSdk, VCnnCOMNTOOLS, 
+#     MSVCDIR, MSVCDir.
+#     So use $(subst \,/,) on them first adding quotes and placing them in
+#         their own variable assigned with :=, then use FullPath.
+#
+
+ifdef USING_CYGWIN
+# Macro to effectively do a toupper without an exec
+define ToUpper
+$(subst a,A,$(subst b,B,$(subst c,C,$(subst d,D,$(subst e,E,$(subst f,F,\
+$(subst g,G,$(subst h,H,$(subst i,I,$(subst j,J,$(subst k,K,$(subst l,L,\
+$(subst m,M,$(subst n,N,$(subst o,O,$(subst p,P,$(subst q,Q,$(subst r,R,\
+$(subst s,S,$(subst t,T,$(subst u,U,$(subst v,V,$(subst w,W,$(subst x,X,\
+$(subst y,Y,$(subst z,Z,$1))))))))))))))))))))))))))
+endef
+# All possible drive letters
+drives=a b c d e f g h i j k l m n o p q r s t v u w x y z
+# Convert /cygdrive/ paths to the mixed style without an exec of cygpath
+#   Must be a path with no spaces. /cygdrive/letter is always lowercase
+#   and letter:/ is always uppercase coming from cygpath.
+define MixedPath
+$(patsubst /%,$(CYGWIN_HOME)/%,$(sort $(filter-out /cygdrive/%,$(foreach drive,$(drives),$(patsubst /cygdrive/$(drive)/%,$(call ToUpper,$(drive)):/%,$1)))))
+endef
+# Use FullPath to get C:/ style non-spaces path. Never ends with a /!
+# We assume cygpath is available in the search path
+#    NOTE: Use of 'pwd' with CYGWIN will not get you a mixed style path!
+define FullPath
+$(if $(word 2,$1),$(shell $(CYGPATH_CMD) $1 2> $(DEV_NULL)),$(call MixedPath,$(realpath $(subst ",,$1))))
+endef
+define OptFullPath
+$(shell if [ "$1" != "" -a -d "$1" ]; then $(CYGPATH_CMD) "$1" 2> $(DEV_NULL); else echo "$1"; fi)
+endef
+else
+# Temporary until we upgrade to MKS 8.7, MKS pwd returns mixed mode path
+define FullPath
+$(shell cd $1 2> $(DEV_NULL) && pwd)
+endef
+define OptFullPath
+$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
+endef
+endif
+
+# System drive
+ifdef SYSTEMDRIVE
+  _system_drive =$(SYSTEMDRIVE)
+else
+  ifdef SystemDrive
+    _system_drive =$(SystemDrive)
+  endif
+endif
+_system_drive:=$(call CheckValue,_system_drive,C:)
+
+# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+#        With cygwin, just use this as is don't use FullPath on it.
+ifdef ALT_UNIXCOMMAND_PATH
+  ifdef USING_CYGWIN
+    UNIXCOMMAND_PATH       :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
+  else
+    xALT_UNIXCOMMAND_PATH  :="$(subst \,/,$(ALT_UNIXCOMMAND_PATH))"
+    fxALT_UNIXCOMMAND_PATH :=$(call FullPath,$(xALT_UNIXCOMMAND_PATH))
+    UNIXCOMMAND_PATH       :=$(call PrefixPath,$(fxALT_UNIXCOMMAND_PATH))
+  endif
+else
+  ifdef USING_CYGWIN
+    UNIXCOMMAND_PATH :=$(call PrefixPath,/usr/bin)
+  else
+    ifdef ROOTDIR
+      xROOTDIR :="$(subst \,/,$(ROOTDIR))"
+      _rootdir :=$(call FullPath,$(xROOTDIR))
+    else
+      xROOTDIR :="$(_system_drive)/mksnt"
+      _rootdir :=$(call FullPath,$(xROOTDIR))
+    endif
+    ifneq ($(_rootdir),)
+      UNIXCOMMAND_PATH :=$(call PrefixPath,$(_rootdir)/mksnt)
+    endif
+  endif
+endif
+UNIXCOMMAND_PATH:=$(call AltCheckSpaces,UNIXCOMMAND_PATH)
+
+# Get version of MKS or CYGWIN
+ifndef USING_CYGWIN
+_MKS_VER :=$(shell $(MKSINFO) 2>&1 | $(GREP) Release | $(TAIL) -1 | $(SED) -e 's@.*\(Release.*\)@\1@')
+MKS_VER  :=$(call GetVersion,$(_MKS_VER))
+# At this point, we can re-define FullPath to use DOSNAME_CMD
+CHECK_MKS87:=$(call CheckVersions,$(MKS_VER),8.7)
+TRY_DOSNAME:=false
+ifeq ($(CHECK_MKS87),same)
+TRY_DOSNAME:=true
+endif
+# Newer should be ok
+ifeq ($(CHECK_MKS87),newer)
+TRY_DOSNAME:=true
+endif
+ifeq ($(TRY_DOSNAME),true)
+ifeq ($(shell $(UNIXCOMMAND_PATH)dosname -s $(_system_drive)/ 2> $(DEV_NULL)),$(_system_drive)/)
+_DOSNAME=$(UNIXCOMMAND_PATH)dosname
+DOSNAME_CMD:=$(_DOSNAME) -s
+define FullPath
+$(subst //,/,$(shell echo $1 | $(DOSNAME_CMD) 2> $(DEV_NULL)))
+endef
+endif # test dosname -s
+endif # TRY_DOSNAME
+endif # MKS
+
+# We try to get references to what we need via the default component
+#    environment variables, or what was used historically.
+
+# Process Windows values into FullPath values, these paths may have \ chars
+
+# System root
+ifdef SYSTEMROOT
+  xSYSTEMROOT  :="$(subst \,/,$(SYSTEMROOT))"
+  _system_root :=$(call FullPath,$(xSYSTEMROOT))
+else
+  ifdef SystemRoot
+     xSYSTEMROOT :="$(subst \,/,$(SystemRoot))"
+    _system_root :=$(call FullPath,$(xSYSTEMROOT))
+  else
+    ifdef WINDIR
+      xWINDIR      :="$(subst \,/,$(WINDIR))"
+      _system_root :=$(call FullPath,$(xWINDIR))
+    else
+      ifdef windir
+        xWINDIR      :="$(subst \,/,$(windir))"
+        _system_root :=$(call FullPath,$(xWINDIR))
+      endif
+    endif
+  endif
+endif
+_system_root:=$(call CheckValue,_system_root,$(_system_drive)/WINNT)
+
+# Program Files directory
+ifdef PROGRAMFILES
+  xPROGRAMFILES      :="$(subst \,/,$(PROGRAMFILES))"
+else
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    xPROGRAMFILES    :="$(_system_drive)/Program Files"
+  else
+    xPROGRAMFILES    :="$(_system_drive)/Program Files (x86)"
+  endif
+endif
+ifeq ($(ARCH_DATA_MODEL), 32)
+  _program_files     :=$(call FullPath,$(xPROGRAMFILES))
+  _program_files32   :=$(_program_files)
+else
+  ifdef PROGRAMW6432
+    xPROGRAMW6432    :="$(subst \,/,$(PROGRAMW6432))"
+  else
+    xPROGRAMW6432    :="$(_system_drive)/Program Files"
+  endif
+  _program_files     :=$(call FullPath,$(xPROGRAMW6432))
+  _program_files32   :=$(call FullPath,$(xPROGRAMFILES))
+  ifneq ($(word 1,$(_program_files32)),$(_program_files32))
+    _program_files32:=
+  endif
+endif
+ifneq ($(word 1,$(_program_files)),$(_program_files))
+  _program_files:=
+endif
+
+# DirectX SDK
+ifdef ALT_DXSDK_DRIVE
+  _dx_sdk_dir  =$(ALT_DXSDK_DRIVE):/DXSDK
+else
+  ifdef DXSDK_DIR
+    xDXSDK_DIR  :="$(subst \,/,$(DXSDK_DIR))"
+  else
+    xDXSDK_DIR  :="$(_system_drive)/DXSDK"
+  endif
+  _dx_sdk_dir :=$(call FullPath,$(xDXSDK_DIR))
+endif
+
+# Use of the Visual Studio compilers requires certain env variables be set:
+#   PATH should include the path to cl.exe
+#   INCLUDE should be defined
+#   LIB     should be defined
+#   LIBPATH should be defined
+#   VS100COMNTOOLS should be defined
+#   WINDOWSSDKDIR should be defined
+#     The 7.0a path is from VS2010 Pro, the 7.1 path is the standalone SDK.
+#     For 64bit either will work for us.
+#     If a developer chooses to install the standalone SDK in some other
+#     location, then they need to set WINDOWSSDKDIR.
+#
+# Compilers for 64bit may be from the free SDK, or Visual Studio Professional.
+#   The free Express compilers don't contain 64 bit compilers, which is why
+#   you instead need the SDK.
+#   Release enginering will use VS2010 Pro, so the frequency of testing of
+#     SDK based builds will depend entirely on individual usage.
+
+# We only need to do this once
+ifndef VS2010_EXISTS
+  # The 2 key paths we need are WINDOWSSDKDIR and VS100COMNTOOLS.
+  #   If not defined try to see if default location exists.
+  #   If defined make sure that the path has no spaces.
+  #   Finally, export path with no spaces so logic minimizes FullPath calls.
+  ifndef WINDOWSSDKDIR
+    # The 7.0a SDK is the second choice.
+    xWINDOWSSDKDIR :="$(_program_files32)/Microsoft SDKs/Windows/v7.0a/"
+    fWINDOWSSDKDIR :=$(call FullPath,$(xWINDOWSSDKDIR))
+    # The 7.1 SDK is the second choice.
+    ifeq ($(fWINDOWSSDKDIR),)
+      xWINDOWSSDKDIR :="$(_program_files32)/Microsoft SDKs/Windows/v7.1/"
+      fWINDOWSSDKDIR :=$(call FullPath,$(xWINDOWSSDKDIR))
+    endif
+  else
+    ifneq ($(word 2,$(WINDOWSSDKDIR)),)
+      xWINDOWSSDKDIR :="$(subst \,/,$(WINDOWSSDKDIR))"
+      fWINDOWSSDKDIR :=$(call FullPath,$(xWINDOWSSDKDIR))
+    else
+      fWINDOWSSDKDIR :=$(WINDOWSSDKDIR)
+    endif
+  endif
+  ifneq ($(fWINDOWSSDKDIR),)
+    WINDOWSSDKDIR  :=$(fWINDOWSSDKDIR)/
+  endif
+  ifndef VS100COMNTOOLS
+    xVS100COMNTOOLS :="$(_program_files32)/Microsoft Visual Studio 10.0/Common7/Tools/"
+    fVS100COMNTOOLS :=$(call FullPath,$(xVS100COMNTOOLS))
+  else
+    xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))"
+    ifneq ($(word 2,$(VS100COMNTOOLS)),)
+      fVS100COMNTOOLS :=$(call FullPath,$(xVS100COMNTOOLS))
+    else
+      fVS100COMNTOOLS :=$(xVS100COMNTOOLS)
+    endif
+  endif
+  ifneq ($(fVS100COMNTOOLS),)
+    VS100COMNTOOLS :=$(fVS100COMNTOOLS)/
+  endif
+  # Check to see that both exist
+  ifeq ($(WINDOWSSDKDIR),)
+    _vs2010_message := No WINDOWSSDKDIR found on system. $(_vs2010_message)
+    VS2010_EXISTS   := false
+  endif
+  ifeq ($(VS100COMNTOOLS),)
+    _vs2010_message := No VS100COMNTOOLS found on system. $(_vs2010_message)
+    VS2010_EXISTS   := false
+  endif
+  ifeq ($(VS2010_EXISTS),false)
+    x:=$(warning WARNING: No VS2010 available. $(_vs2010_message))
+    VS100COMNTOOLS :=
+    WINDOWSSDKDIR  :=
+  else
+    VS2010_EXISTS := true
+    _msvc_dir     :=$(VS100COMNTOOLS)/../../Vc
+  endif
+  export VS2010_EXISTS
+  export VS100COMNTOOLS
+  export WINDOWSSDKDIR
+endif
+
+ifneq ($(VS2010_EXISTS),true)
+  x:=$(error ERROR: No VS2010 found on system.)
+endif 
+
+# VS2010 Compiler root directory
+_msvc_dir :=$(VS100COMNTOOLS)/../../Vc
+# SDK root directory
+_ms_sdk   :=$(WINDOWSSDKDIR)
+# Compiler bin directory and redist directory
+ifeq ($(ARCH_DATA_MODEL), 32)
+  _compiler_bin :=$(_msvc_dir)/Bin
+  _redist_sdk   :=$(call FullPath,$(_msvc_dir)/redist/x86/Microsoft.VC100.CRT)
+endif
+ifeq ($(ARCH_DATA_MODEL), 64)
+  _compiler_bin :=$(_msvc_dir)/bin/amd64
+  _redist_sdk   :=$(call FullPath,$(_msvc_dir)/redist/x64/Microsoft.VC100.CRT)
+endif
+ifeq ($(_redist_sdk),)
+  _redist_sdk   :=$(_system_root)/system32
+endif
+
+# Location on system where jdk installs might be
+ifneq ($(_program_files),)
+  USRJDKINSTANCES_PATH =$(_program_files)/Java
+else
+  USRJDKINSTANCES_PATH =$(_system_drive)/
+endif
+
+# SLASH_JAVA: location of all network accessable files
+# NOTE: Do not use FullPath on this because it's often a drive letter and
+#       plain drive letters are ambiguous, so just use this 'as is'.
+ifdef ALT_SLASH_JAVA
+  xALT_SLASH_JAVA :="$(subst \,/,$(ALT_SLASH_JAVA))"
+  SLASH_JAVA      :=$(xALT_SLASH_JAVA)
+else
+  ifdef ALT_JDK_JAVA_DRIVE
+    SLASH_JAVA  =$(JDK_JAVA_DRIVE)
+  else
+    SLASH_JAVA  =J:
+  endif
+endif
+#SLASH_JAVA:=$(call AltCheckSpaces,SLASH_JAVA)
+
+# JDK_DEVTOOLS_DIR: common path for all the java devtools
+ifdef ALT_JDK_DEVTOOLS_DIR
+  xALT_JDK_DEVTOOLS_DIR :="$(subst \,/,$(ALT_JDK_DEVTOOLS_DIR))"
+  JDK_DEVTOOLS_DIR      :=$(call FullPath,$(xALT_JDK_DEVTOOLS_DIR))
+else
+  JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools
+endif
+JDK_DEVTOOLS_DIR:=$(call AltCheckSpaces,JDK_DEVTOOLS_DIR)
+
+# COMPILER_PATH: path to where the compiler and tools are installed.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifdef ALT_COMPILER_PATH
+  xALT_COMPILER_PATH  :="$(subst \,/,$(ALT_COMPILER_PATH))"
+  fxALT_COMPILER_PATH :=$(call FullPath,$(xALT_COMPILER_PATH))
+  COMPILER_PATH       :=$(call PrefixPath,$(fxALT_COMPILER_PATH))
+else
+  COMPILER_PATH :=$(call PrefixPath,$(_compiler_bin))
+endif
+COMPILER_PATH :=$(call AltCheckSpaces,COMPILER_PATH)
+
+# MSDEVTOOLS_PATH: path to where the additional MS Compiler tools are.
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifdef ALT_MSDEVTOOLS_PATH
+  xALT_MSDEVTOOLS_PATH  :="$(subst \,/,$(ALT_MSDEVTOOLS_PATH))"
+  fxALT_MSDEVTOOLS_PATH :=$(call FullPath,$(xALT_MSDEVTOOLS_PATH))
+  MSDEVTOOLS_PATH       :=$(call PrefixPath,$(fxALT_MSDEVTOOLS_PATH))
+else
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    ifdef MSTOOLS
+      xMSTOOLS  :="$(subst \,/,$(MSTOOLS))"
+      _ms_tools :=$(call FullPath,$(xMSTOOLS))
+    else
+      ifdef Mstools
+        xMSTOOLS  :="$(subst \,/,$(Mstools))"
+        _ms_tools :=$(call FullPath,$(xMSTOOLS))
+      else
+        _ms_tools :=
+      endif
+    endif
+    ifneq ($(_ms_tools),)
+      _ms_tools_bin :=$(_ms_tools)/Bin
+    else
+      # Assumes compiler bin is .../Bin/win64/x86/AMD64, rc.exe is 3 levels up
+      _ms_tools_bin :=$(_compiler_bin)/../../..
+    endif
+  else
+    _ms_tools_bin :=$(_compiler_bin)
+  endif
+  MSDEVTOOLS_PATH :=$(call PrefixPath,$(_ms_tools_bin))
+endif
+MSDEVTOOLS_PATH:=$(call AltCheckSpaces,MSDEVTOOLS_PATH)
+
+# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
+#  NOTE: Must end with / so that it could be empty, allowing PATH usage.
+ifdef ALT_DEVTOOLS_PATH
+  xALT_DEVTOOLS_PATH  :="$(subst \,/,$(ALT_DEVTOOLS_PATH))"
+  fxALT_DEVTOOLS_PATH :=$(call FullPath,$(xALT_DEVTOOLS_PATH))
+  DEVTOOLS_PATH       :=$(call PrefixPath,$(fxALT_DEVTOOLS_PATH))
+else
+  ifdef USING_CYGWIN
+    DEVTOOLS_PATH :=$(UNIXCOMMAND_PATH)
+  else
+    xDEVTOOLS_PATH  :="$(_system_drive)/utils"
+    fxDEVTOOLS_PATH :=$(call FullPath,$(xDEVTOOLS_PATH))
+    DEVTOOLS_PATH  :=$(call PrefixPath,$(fxDEVTOOLS_PATH))
+  endif
+endif
+DEVTOOLS_PATH:=$(call AltCheckSpaces,DEVTOOLS_PATH)
+
+# _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
+# _BOOTDIR2: Second choice
+# The _BOOTDIR3 is defind optionally.
+ifndef ALT_BOOTDIR
+  _BOOTDIR1  =$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION)
+  _BOOTDIR2  =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
+  _BOOTDIR3  =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
+endif
+
+# Everybody needs the MSVCRNN runtime starting with VS2010
+_NEEDS_MSVCRNN = true
+
+ifeq ($(_NEEDS_MSVCRNN), true)
+  # MSVCRNN_DLL_PATH: location of msvcrnn.dll that will be re-distributed
+  ifdef ALT_MSVCRNN_DLL_PATH
+    xALT_MSVCRNN_DLL_PATH :="$(subst \,/,$(ALT_MSVCRNN_DLL_PATH))"
+    MSVCRNN_DLL_PATH      :=$(call FullPath,$(xALT_MSVCRNN_DLL_PATH))
+  else
+    MSVCRNN_DLL_PATH :=$(_redist_sdk)
+  endif
+  MSVCRNN_DLL_PATH :=$(call AltCheckSpaces,MSVCRNN_DLL_PATH)
+endif
+
+# DXSDK_PATH: path to Microsoft DirectX SDK Include and Lib
+ifdef ALT_DXSDK_PATH
+  xALT_DXSDK_PATH :="$(subst \,/,$(ALT_DXSDK_PATH))"
+  DXSDK_PATH      :=$(call FullPath,$(xALT_DXSDK_PATH))
+else
+  _DXSDK_PATH1 :=$(_dx_sdk_dir)
+  _DXSDK_PATH2 :=$(JDK_DEVTOOLS_DIR)/windows/dxsdk
+  DXSDK_PATH  :=$(call DirExists,$(_DXSDK_PATH1),$(_DXSDK_PATH2),$(_dx_sdk_dir))
+endif
+DXSDK_PATH :=$(call AltCheckSpaces,DXSDK_PATH)
+
+# DXSDK_INCLUDE_PATH: path to Microsoft DirectX SDK Include
+ifdef ALT_DXSDK_INCLUDE_PATH
+  xALT_DXSDK_INCLUDE_PATH :="$(subst \,/,$(ALT_DXSDK_INCLUDE_PATH))"
+  DXSDK_INCLUDE_PATH      :=$(call FullPath,$(xALT_DXSDK_INCLUDE_PATH))
+else
+  DXSDK_INCLUDE_PATH =$(subst //,/,$(DXSDK_PATH)/Include)
+endif
+
+# DXSDK_LIB_PATH: path to Microsoft DirectX SDK Lib
+ifdef ALT_DXSDK_LIB_PATH
+  xALT_DXSDK_LIB_PATH :="$(subst \,/,$(ALT_DXSDK_LIB_PATH))"
+  DXSDK_LIB_PATH      :=$(call FullPath,$(xALT_DXSDK_LIB_PATH))
+else
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    # 64bit libs are located in "Lib/x64" subdir
+    DXSDK_LIB_PATH =$(subst //,/,$(DXSDK_PATH)/Lib/x64)
+  else
+    DXSDK_LIB_PATH =$(subst //,/,$(DXSDK_PATH)/Lib)
+  endif
+endif
+
+# DEPLOY_MSSDK: Microsoft SDK for this platform (for deploy)
+ifdef ALT_DEPLOY_MSSDK
+  xALT_DEPLOY_MSSDK :="$(subst \,/,$(ALT_DEPLOY_MSSDK))"
+  DEPLOY_MSSDK      :=$(call FullPath,$(xALT_DEPLOY_MSSDK))
+else
+  DEPLOY_MSSDK      :=$(_ms_sdk)
+endif
+DEPLOY_MSSDK:=$(call AltCheckSpaces,DEPLOY_MSSDK)
+
+# INSTALL_MSSDK: Microsoft Installer SDK for this platform (for install)
+ifdef ALT_INSTALL_MSSDK
+  xALT_INSTALL_MSSDK :="$(subst \,/,$(ALT_INSTALL_MSSDK))"
+  INSTALL_MSSDK      :=$(call FullPath,$(xALT_INSTALL_MSSDK))
+else
+  INSTALL_MSSDK      :=$(_ms_sdk)
+endif
+INSTALL_MSSDK:=$(call AltCheckSpaces,INSTALL_MSSDK)
+
+# WSCRIPT: path to wscript.exe (used in creating install bundles)
+ifdef ALT_WSCRIPT
+  xALT_WSCRIPT :="$(subst \,/,$(ALT_WSCRIPT))"
+  WSCRIPT  =$(xALT_WSCRIPT)
+else
+  _WSCRIPT1 :=$(_system_root)/system32/wscript.exe
+  _WSCRIPT2 :=$(DEVTOOLS_PATH)wscript.exe
+  WSCRIPT  :=$(call FileExists,$(_WSCRIPT1),$(_WSCRIPT2))
+endif
+WSCRIPT:=$(call AltCheckSpaces,WSCRIPT)
+# batch mode no modal dialogs on errors, please.
+WSCRIPT += -B
+
+# CSCRIPT: path to cscript.exe (used in creating install bundles)
+ifdef ALT_CSCRIPT
+  xALT_CSCRIPT :="$(subst \,/,$(ALT_CSCRIPT))"
+  CSCRIPT  =$(xALT_CSCRIPT)
+else
+  _CSCRIPT1 :=$(_system_root)/system32/cscript.exe
+  _CSCRIPT2 :=$(DEVTOOLS_PATH)cscript.exe
+  CSCRIPT  :=$(call FileExists,$(_CSCRIPT1),$(_CSCRIPT2))
+endif
+CSCRIPT:=$(call AltCheckSpaces,CSCRIPT)
+
+# CABARC: path to cabarc.exe (used in creating install bundles)
+ifdef ALT_CABARC
+  xALT_CABARC :="$(subst \,/,$(ALT_CABARC))"
+  CABARC  =$(xALT_CABARC)
+else
+  _CABARC1 :=$(_system_root)/system32/cabarc.exe
+  _CABARC2 :=$(DEVTOOLS_PATH)cabarc.exe
+  CABARC  :=$(call FileExists,$(_CABARC1),$(_CABARC2))
+endif
+CABARC:=$(call AltCheckSpaces,CABARC)
+
+# MSICERT: path to msicert.exe (used in creating install bundles)
+ifdef ALT_MSICERT
+  xALT_MSICERT :="$(subst \,/,$(ALT_MSICERT))"
+  MSICERT  =$(xALT_MSICERT)
+else
+  _MSICERT1 :=$(INSTALL_MSSDK)/Bin/msicert.exe
+  _MSICERT2 :=$(DEVTOOLS_PATH)msicert.exe
+  MSICERT   :=$(call FileExists,$(_MSICERT1),$(_MSICERT2))
+endif
+MSICERT:=$(call AltCheckSpaces,MSICERT)
+
+# Import JDK images allow for partial builds, components not built are
+#    imported (or copied from) these import areas when needed.
+
+# BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for
+#   multiple platforms, e.g. windows-i586, solaris-sparc, linux-586, etc.
+ifdef ALT_BUILD_JDK_IMPORT_PATH
+  BUILD_JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH))
+else
+  BUILD_JDK_IMPORT_PATH   = $(PROMOTED_BUILD_BINARIES)
+endif
+BUILD_JDK_IMPORT_PATH:=$(call AltCheckSpaces,BUILD_JDK_IMPORT_PATH)
+
+# JDK_IMPORT_PATH: location of previously built JDK (this version) to import
+ifdef ALT_JDK_IMPORT_PATH
+  JDK_IMPORT_PATH  :=$(call FullPath,$(ALT_JDK_IMPORT_PATH))
+else
+  JDK_IMPORT_PATH   = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT)
+endif
+JDK_IMPORT_PATH:=$(call AltCheckSpaces,JDK_IMPORT_PATH)
+
+# HOTSPOT_CLIENT_PATH: location of client jvm library file.
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ifdef ALT_HOTSPOT_CLIENT_PATH
+    HOTSPOT_CLIENT_PATH :=$(call FullPath,$(ALT_HOTSPOT_CLIENT_PATH))
+  else
+    HOTSPOT_CLIENT_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/client
+  endif
+  HOTSPOT_CLIENT_PATH:=$(call AltCheckSpaces,HOTSPOT_CLIENT_PATH)
+endif
+
+# HOTSPOT_SERVER_PATH: location of server jvm library file.
+ifdef ALT_HOTSPOT_SERVER_PATH
+  HOTSPOT_SERVER_PATH :=$(call FullPath,$(ALT_HOTSPOT_SERVER_PATH))
+else
+  HOTSPOT_SERVER_PATH   =$(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/server
+endif
+HOTSPOT_SERVER_PATH:=$(call AltCheckSpaces,HOTSPOT_SERVER_PATH)
+
+# HOTSPOT_LIB_PATH: location of jvm.lib file.
+ifdef ALT_HOTSPOT_LIB_PATH
+  xALT_HOTSPOT_LIB_PATH :="$(subst \,/,$(ALT_HOTSPOT_LIB_PATH))"
+  HOTSPOT_LIB_PATH      :=$(call FullPath,$(xALT_HOTSPOT_LIB_PATH))
+else
+  HOTSPOT_LIB_PATH  =$(HOTSPOT_IMPORT_PATH)/lib
+endif
+HOTSPOT_LIB_PATH:=$(call AltCheckSpaces,HOTSPOT_LIB_PATH)
+
+# Special define for checking the binaries
+
+# All windows dll and exe files should have been built with /NXCOMPAT
+#   and be setup for dynamic base addresses.
+#   In addition, we should not be dependent on certain dll files that
+#   we do not or cannot redistribute.
+
+# List of filenames we should NOT be dependent on
+ifeq ($(MFC_DEBUG),true)
+  BANNED_DLLS=msvcp100[.]dll
+else
+  BANNED_DLLS=msvcp100[.]dll|msvcr100d[.]dll|msvcrtd[.]dll
+endif
+
+# Check for /safeseh (only used on 32bit)
+define binary_file_safeseh_verification # binary_file
+( \
+  $(ECHO) "Checking for /SAFESEH usage in: $1" && \
+  if [ "`$(DUMPBIN) /loadconfig $1 | $(EGREP) -i 'Safe Exception Handler Table'`" = "" ] ; then \
+    $(ECHO) "ERROR: Did not find 'Safe Exception Handler Table' in loadconfig: $1" ; \
+    $(DUMPBIN) /loadconfig $1 ; \
+    exit 6 ; \
+  fi ; \
+)
+endef
+
+# Check for /NXCOMPAT usage
+define binary_file_nxcompat_verification # binary_file
+( \
+  $(ECHO) "Checking for /NXCOMPAT usage in: $1" && \
+  if [ "`$(DUMPBIN) /headers $1 | $(EGREP) -i 'NX compatible'`" = "" ] ; then \
+    $(ECHO) "ERROR: Did not find 'NX compatible' in headers: $1" ; \
+    $(DUMPBIN) /headers $1 ; \
+    exit 7 ; \
+  fi ; \
+)
+endef
+
+# Check for /DYNAMICBASE usage
+define binary_file_dynamicbase_verification # binary_file
+( \
+  $(ECHO) "Checking for /DYNAMICBASE usage in: $1" && \
+  if [ "`$(DUMPBIN) /headers $1 | $(EGREP) -i 'Dynamic base'`" = "" ] ; then \
+    $(ECHO) "ERROR: Did not find 'Dynamic base' in headers: $1" ; \
+    $(DUMPBIN) /headers $1 ; \
+    exit 8 ; \
+  fi ; \
+)
+endef
+
+# Check for banned dll usage
+define binary_file_dll_verification # binary_file
+( \
+  $(ECHO) "Checking for banned dependencies in: $1" && \
+  if [ "`$(DUMPBIN) /dependents $1 | $(EGREP) -i '$(BANNED_DLLS)'`" != "" ] ; then \
+    $(ECHO) "ERROR: Found use of $(BANNED_DLLS)"; \
+    $(DUMPBIN) /dependents $1 ; \
+    exit 9 ; \
+  fi ; \
+)
+endef
+
+# Macro to check it's input file for properly built executables.
+#   Relies on process exit code. Different for 32bit vs 64bit.
+ifeq ($(ARCH_DATA_MODEL),32)
+define binary_file_verification # binary_file
+( \
+  $(call binary_file_safeseh_verification,$1); \
+  $(call binary_file_nxcompat_verification,$1); \
+  $(call binary_file_dynamicbase_verification,$1); \
+  $(call binary_file_dll_verification,$1); \
+)
+endef
+else
+define binary_file_verification # binary_file
+( \
+  $(call binary_file_nxcompat_verification,$1); \
+  $(call binary_file_dynamicbase_verification,$1); \
+  $(call binary_file_dll_verification,$1); \
+)
+endef
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Defs.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,666 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for all platforms.
+#
+# Normally the convention is that these alternate definitions of
+#   primary make variables are never defined inside the Makefiles anywhere
+#   but are defined via environment variables or set on the make command
+#   line. So you should never see an ALT_* variable defined in any
+#   makefiles, just used. This is the convention and there are some
+#   exceptions, either mistakes or unusual circumstances.
+#
+# The naming convention for the default value of one of these variables
+#   that has an ALT_* override capability is to name the default value with a
+#   leading underscore (_). So for XXX you would have:
+#      _XXX      default value
+#      ALT_XXX   any override the user is providing if any
+#      XXX       the final value, either the default _XXX or the ALT_XXX value.
+#
+
+# On Directory names. In very rare cases should the Windows directory
+#    names use the backslash, please use the C:/ style of windows paths.
+#    Avoid duplicating the // characters in paths, this has known to cause
+#    strange problems with jar and other utilities, e.g. /a//b/ != /a/b/.
+#    Some of these variables have an explicit trailing / character, but in
+#    general, they should NOT have the trailing / character.
+
+-include $(SPEC)
+-include $(VARS)
+
+# Get shared system utilities macros defined
+include $(JDK_MAKE_SHARED_DIR)/Defs-utils.gmk
+
+# Assumes ARCH, PLATFORM, ARCH_VM_SUBDIR, JDK_TOPDIR, etc. have been defined.
+
+# Simple pwd path
+# NOTE: Just use the shell's cd and pwd here, more reliable at sanity time.
+define PwdPath
+$(shell cd $1 2> $(DEV_NULL) && pwd)
+endef
+define AbsPwdPathCheck
+$(shell cd .. 2> $(DEV_NULL) && cd $1 2> $(DEV_NULL) && pwd)
+endef
+
+# Checks an ALT value for spaces (should be one word), 
+#       warns and returns Check_ALT_$1 if spaces
+define AltCheckSpaces
+$(if $(word 2,$($1)),$(warning "WARNING: Value of $1 contains a space: '$($1)', check or set ALT_$1")Check_ALT_$1,$($1))
+endef
+
+# Checks an ALT value for empty, warns and returns Check_ALT_$1 if empty
+define AltCheckValue
+$(if $($1),$($1),$(warning "WARNING: Value of $1 cannot be empty, check or set ALT_$1")Check_ALT_$1)
+endef
+
+# Checks any value for empty, warns and returns $2 if empty
+define CheckValue
+$(if $($1),$($1),$(warning "WARNING: Value of $1 cannot be empty, will use '$2'")$2)
+endef
+
+# Prefix for a utility prefix path, if empty leave alone, otherwise end with a /
+define PrefixPath
+$(if $1,$(subst //,/,$1/),)
+endef
+
+# Select a directory if it exists, or the alternate 2 or the alternate 3
+define DirExists
+$(shell \
+  if [ -d "$1" ]; then  \
+    echo "$1"; \
+  elif [ -d "$2" ]; then \
+    echo "$2"; \
+  else \
+    echo "$3"; \
+  fi)
+endef
+
+# Select a directory if it exists, or the alternate 2, or the alternate 3, or the alternate 4
+define DirExists4
+$(shell \
+  if [ -d "$1" ]; then  \
+    echo "$1"; \
+  elif [ -d "$2" ]; then \
+    echo "$2"; \
+  elif [ -d "$3" ]; then \
+    echo "$3"; \
+  else \
+    echo "$4"; \
+  fi)
+endef
+
+
+# Select a writable directory if it exists and is writable, or the alternate
+define WriteDirExists
+$(shell \
+  if [ -d "$1" -a -w "$1" ]; then  \
+    echo "$1"; \
+  else \
+    echo "$2"; \
+  fi)
+endef
+
+# Select a file if it exists, or the alternate 1, or the alternate 2
+define FileExists
+$(shell \
+  if [ -r "$1" ]; then \
+    echo "$1"; \
+  elif [ -r "$2" ]; then \
+    echo "$2"; \
+  else \
+    echo "NO_FILE_EXISTS"; \
+  fi)
+endef
+
+# Given a line of text, get the version number from it
+define GetVersion
+$(shell echo $1 | sed -e 's@[^0-9]*\([0-9][0-9]*\.[0-9][.0-9]*\).*@\1@' )
+endef
+
+# Return one part of the version numbers, watch out for non digits.
+define VersionWord # Number Version
+$(word $1,$(subst ., ,$(subst -, ,$2)))
+endef
+
+# Given a major.minor.micro version, return the major, minor, or micro number
+define MajorVersion
+$(if $(call VersionWord,1,$1),$(call VersionWord,1,$1),0)
+endef
+define MinorVersion
+$(if $(call VersionWord,2,$1),$(call VersionWord,2,$1),0)
+endef
+define MicroVersion
+$(if $(call VersionWord,3,$1),$(call VersionWord,3,$1),0)
+endef
+
+# Macro that returns missing, same, newer, or older $1=version $2=required
+define CheckVersions
+$(shell \
+  if [ "$1" = "" -o "$2" = "" ]; then \
+    echo missing; \
+  elif [ "$1" = "$2" ]; then \
+    echo same; \
+  elif [ $(call MajorVersion,$1) -lt $(call MajorVersion,$2) ] ; then \
+    echo older; \
+  elif [ $(call MajorVersion,$1) -gt $(call MajorVersion,$2) ] ; then \
+    echo newer; \
+  elif [ $(call MinorVersion,$1) -lt $(call MinorVersion,$2) ]; then \
+    echo older; \
+  elif [ $(call MinorVersion,$1) -gt $(call MinorVersion,$2) ]; then \
+    echo newer; \
+  elif [ $(call MicroVersion,$1) -lt $(call MicroVersion,$2) ]; then \
+    echo older; \
+  elif [ $(call MicroVersion,$1) -gt $(call MicroVersion,$2) ]; then \
+    echo newer; \
+  else \
+    echo same; \
+  fi)
+endef
+
+# Expand SRCDIR_LIST, which is used to automatically include various
+# platform and shared sources/headers.  This is mainly useful for the
+# Mac OS X build, which pulls its platform sources from the solaris and/or
+# macosx trees, depending on the component.
+ifeq ($(PLATFORM), macosx)
+  define JavaSrcDirList
+  $(JAVA_SRCDIR_LIST:%=$1$(JDK_TOPDIR)/%/$2)
+  endef
+  define NativeSrcDirList
+  $(NATIVE_SRCDIR_LIST:%=$1$(JDK_TOPDIR)/%/$2)
+  endef
+endif
+
+# Make sure certain variables are non-empty at this point
+_check_values:=\
+$(call CheckValue,ARCH,),\
+$(call CheckValue,ARCH_DATA_MODEL,),\
+$(call CheckValue,ARCH_VM_SUBDIR,),\
+$(call CheckValue,JDK_TOPDIR,),\
+$(call CheckValue,JDK_MAKE_SHARED_DIR,),\
+$(call CheckValue,VARIANT,),\
+$(call CheckValue,PLATFORM,)
+
+# Misc common settings for all workspaces
+#   This determines the version of the product, and the previous version or boot
+ifndef JDK_MAJOR_VERSION
+  JDK_MAJOR_VERSION      = 1
+  PREVIOUS_MAJOR_VERSION = 1
+endif
+
+ifndef JDK_MINOR_VERSION
+  JDK_MINOR_VERSION      = 8
+  PREVIOUS_MINOR_VERSION = 7
+endif
+
+ifndef JDK_MICRO_VERSION
+  JDK_MICRO_VERSION      = 0
+  PREVIOUS_MICRO_VERSION = 0
+endif
+
+ifndef MILESTONE
+  MILESTONE = internal
+endif
+
+# Default names
+ifdef OPENJDK
+  LAUNCHER_NAME = openjdk
+  PRODUCT_NAME = OpenJDK
+  PRODUCT_SUFFIX = Runtime Environment
+  JDK_RC_PLATFORM_NAME = Platform
+  COMPANY_NAME = N/A
+else
+  LAUNCHER_NAME = java
+  PRODUCT_NAME = Java(TM)
+  PRODUCT_SUFFIX = SE Runtime Environment
+  JDK_RC_PLATFORM_NAME = Platform SE
+  COMPANY_NAME = Oracle Corporation
+endif
+
+RUNTIME_NAME = $(PRODUCT_NAME) $(PRODUCT_SUFFIX)
+
+ifndef BUILD_NUMBER
+  JDK_BUILD_NUMBER = b00
+else
+  ifndef JDK_BUILD_NUMBER
+    JDK_BUILD_NUMBER = $(BUILD_NUMBER)
+  endif
+endif
+
+# Default variant is the optimized version of everything
+#    can be OPT or DBG,  default is OPT
+#    Determine the extra pattern to add to the release name for debug/fastdebug.
+#    Determine the JDK_IMPORT_VARIANT, so we get the right VM files copied over.
+#    Determine suffix for obj directory or OBJDIR, for .o files.
+#    (by keeping .o files separate, just .o files, they don't clobber each
+#     other, however, the library files will clobber each other).
+#
+ifeq ($(VARIANT), DBG)
+  BUILD_VARIANT_RELEASE=-debug
+  OBJDIRNAME_SUFFIX=_g
+else
+  BUILD_VARIANT_RELEASE=
+  OBJDIRNAME_SUFFIX=
+endif
+ifeq ($(FASTDEBUG), true)
+  VARIANT=DBG
+  BUILD_VARIANT_RELEASE=-fastdebug
+  OBJDIRNAME_SUFFIX=_gO
+  _JDK_IMPORT_VARIANT=/fastdebug
+endif
+
+# Depending on the flavor of the build, add a -debug or -fastdebug to the name
+ifdef DEBUG_NAME
+  BUILD_VARIANT_RELEASE=-$(DEBUG_NAME)
+endif
+
+# These default values are redefined during a release build.
+#    CTE can set JDK_UPDATE_VERSION during the update release
+ifdef JDK_UPDATE_VERSION
+  JDK_VERSION  = $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)_$(JDK_UPDATE_VERSION)
+  MARKETING_NUMBER := $(shell \
+	$(ECHO) $(JDK_UPDATE_VERSION) | $(NAWK) '{if (substr($$0,1,1)=="0") print substr($$0, 2); else print $$0;}')
+  MARKET_NAME= $(shell $(ECHO) " Update $(MARKETING_NUMBER)")
+  JDK_MKTG_VERSION  = $(JDK_MINOR_VERSION)u$(MARKETING_NUMBER)
+else
+  JDK_VERSION  = $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
+  JDK_MKTG_VERSION  = $(JDK_MINOR_VERSION)
+  MARKET_NAME=
+endif
+JDK_UNDERSCORE_VERSION =  $(subst .,_,$(JDK_VERSION))
+JDK_MKTG_UNDERSCORE_VERSION =  $(subst .,_,$(JDK_MKTG_VERSION))
+
+# RELEASE is JDK_VERSION and -MILESTONE if MILESTONE is set
+ifneq ($(MILESTONE),fcs)
+  RELEASE      = $(JDK_VERSION)-$(MILESTONE)$(BUILD_VARIANT_RELEASE)
+else
+  RELEASE      = $(JDK_VERSION)$(BUILD_VARIANT_RELEASE)
+endif
+
+# FULL_VERSION is RELEASE and -BUILD_NUMBER if BUILD_NUMBER is set
+ifdef BUILD_NUMBER
+  FULL_VERSION = $(RELEASE)-$(BUILD_NUMBER)
+else
+  BUILD_NUMBER = b00
+  ifndef USER_RELEASE_SUFFIX
+    BUILD_DATE := $(shell $(DATE) '+%Y_%m_%d_%H_%M')
+    # Avoid [:alnum:] since it depends on the locale.
+    CLEAN_USERNAME := $(shell $(ECHO) "$(USER)" | $(TR) -d -c 'abcdefghijklmnopqrstuvqxyz0123456789')
+    USER_RELEASE_SUFFIX := $(shell $(ECHO) "$(CLEAN_USERNAME)_$(BUILD_DATE)" | $(TR) 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvqxyz')
+  endif
+  export USER_RELEASE_SUFFIX
+  FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER)
+endif
+
+# Promoted build location
+PROMOTED_RE_AREA = $(SLASH_JAVA)/re/jdk/$(JDK_VERSION)/promoted
+PROMOTED_BUILD_LATEST = latest
+PROMOTED_BUILD_BASEDIR = $(PROMOTED_RE_AREA)/$(PROMOTED_BUILD_LATEST)
+PROMOTED_BUILD_DISTDIR = $(PROMOTED_BUILD_BASEDIR)/dist/$(PLATFORM)-$(ARCH)
+PROMOTED_BUILD_BINARIES = $(PROMOTED_BUILD_BASEDIR)/binaries
+
+# PARALLEL_COMPILE_JOBS: is the number of compiles done in parallel.
+#  If the user sets ALT_PARALLEL_COMPILE_JOBS, then COMPILE_APPROACH is set
+#  to parallel.
+#
+#  Recommended setting: 2 seems to be ideal for single cpu machines,
+#                       2 times the number of CPU's is a basic formula, 
+#                       but probably not more than 4 if the machine is 
+#                       being shared by others, or the machine is limited 
+#                       in RAM or swap.
+#
+ifdef ALT_PARALLEL_COMPILE_JOBS
+  PARALLEL_COMPILE_JOBS=$(ALT_PARALLEL_COMPILE_JOBS)
+else
+  PARALLEL_COMPILE_JOBS=2
+endif
+
+# Previous JDK release (version of BOOTDIR version)
+ifdef ALT_PREVIOUS_JDK_VERSION
+  PREVIOUS_JDK_VERSION = $(ALT_PREVIOUS_JDK_VERSION)
+else
+  PREVIOUS_JDK_VERSION  = $(PREVIOUS_MAJOR_VERSION).$(PREVIOUS_MINOR_VERSION).$(PREVIOUS_MICRO_VERSION)
+endif
+export PREVIOUS_JDK_VERSION
+PREVIOUS_JDK_VERSION:=$(call AltCheckSpaces,PREVIOUS_JDK_VERSION)
+
+# Version with _ instead of . in number
+ifeq ($(PREVIOUS_MINOR_VERSION),5)
+  PREVIOUS_JDK_UNDERSCORE_VERSION =  $(subst .,_,$(PREVIOUS_JDK_VERSION))
+else
+  PREVIOUS_JDK_UNDERSCORE_VERSION = $(PREVIOUS_MINOR_VERSION)
+endif
+
+# Include any private definitions for this set of workspaces
+_PRIVATE_DEFS_FILE=$(JDK_MAKE_SHARED_DIR)/PrivateDefs.gmk
+ifeq ($(USING_PRIVATE_DEFS),)
+  USING_PRIVATE_DEFS:=$(shell if [ -f $(_PRIVATE_DEFS_FILE) ]; then echo true; else echo false; fi)
+endif
+ifeq ($(USING_PRIVATE_DEFS),true)
+dummy:=$(warning "WARNING: Using definitions from $(_PRIVATE_DEFS_FILE)")
+include $(_PRIVATE_DEFS_FILE)
+endif
+
+# OUTPUTDIR: Location of all output for the build
+ifdef ALT_OUTPUTDIR
+  OUTPUTDIR:=$(subst \,/,$(ALT_OUTPUTDIR))
+  # Assumes this is absolute (checks later)
+  ABS_OUTPUTDIR:=$(OUTPUTDIR)
+else
+  ifndef _OUTPUTDIR
+    # Default:  Get "build" parent directory, which should always exist
+    ifndef BUILD_PARENT_DIRECTORY
+      BUILD_PARENT_DIRECTORY=$(BUILDDIR)/..
+    endif
+    ifdef OPENJDK
+      _OUTPUTDIRNAME=$(PLATFORM)-$(ARCH)$(OPENJDK_SUFFIX)
+    else
+      _OUTPUTDIRNAME=$(PLATFORM)-$(ARCH)
+    endif
+    _OUTPUTDIR=$(BUILD_PARENT_DIRECTORY)/build/$(_OUTPUTDIRNAME)
+  endif
+  OUTPUTDIR:=$(_OUTPUTDIR)
+endif
+# Check for spaces and null value
+OUTPUTDIR:=$(call AltCheckSpaces,OUTPUTDIR)
+
+# Get platform specific settings
+# NB: OUTPUTDIR must be defined. Otherwise hotspot import detection will not work correctly
+# On other hand this must be included early as it provides platform specific defines such as FullPath
+include $(JDK_MAKE_SHARED_DIR)/Defs-versions.gmk
+
+# Get platform specific settings (defines COMPILER_PATH)
+include $(JDK_MAKE_SHARED_DIR)/Defs-$(PLATFORM).gmk
+
+# Components
+ifdef ALT_LANGTOOLS_DIST
+  LANGTOOLS_DIST :=$(call FullPath,$(ALT_LANGTOOLS_DIST))
+else
+  LANGTOOLS_DIST =
+endif
+ifdef ALT_CORBA_DIST
+  CORBA_DIST :=$(call FullPath,$(ALT_CORBA_DIST))
+else
+  CORBA_DIST =
+endif
+ifdef ALT_JAXP_DIST
+  JAXP_DIST :=$(call FullPath,$(ALT_JAXP_DIST))
+else
+  JAXP_DIST =
+endif
+ifdef ALT_JAXWS_DIST
+  JAXWS_DIST :=$(call FullPath,$(ALT_JAXWS_DIST))
+else
+  JAXWS_DIST =
+endif
+
+# HOTSPOT_DOCS_IMPORT_PATH: Path to hotspot docs files to import into the docs generation
+ifdef ALT_HOTSPOT_DOCS_IMPORT_PATH
+  HOTSPOT_DOCS_IMPORT_PATH :=$(call FullPath,$(ALT_HOTSPOT_DOCS_IMPORT_PATH))
+else
+  HOTSPOT_DOCS_IMPORT_PATH :=$(call DirExists,$(HOTSPOT_IMPORT_PATH)/docs,$(PROMOTED_BUILD_BASEDIR)/docs,/NO_DOCS_DIR)
+endif
+
+# These are the same on all platforms but require the above platform include 1st
+
+# BOOTDIR: Bootstrap JDK, previous released JDK.
+#   _BOOTDIR1 and _BOOTDIR2 picked by platform
+#   Platform may optionally define _BOOTDIR3 as well.
+ifdef ALT_BOOTDIR
+  BOOTDIR =$(ALT_BOOTDIR)
+else
+  ifdef _BOOTDIR3
+    BOOTDIR  :=$(call DirExists4,$(_BOOTDIR1),$(_BOOTDIR2),$(_BOOTDIR3),/NO_BOOTDIR)
+  else
+    BOOTDIR  :=$(call DirExists,$(_BOOTDIR1),$(_BOOTDIR2),/NO_BOOTDIR)
+  endif
+endif
+export BOOTDIR
+BOOTDIR:=$(call AltCheckSpaces,BOOTDIR)
+
+# PREVIOUS_FCS_RE_AREA: re path to where previous release binaries/bundles are
+PREVIOUS_FCS_RE_AREA = $(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs
+
+# PREVIOUS_RELEASE_IMAGE: Previous install image to compare against
+ifdef ALT_PREVIOUS_RELEASE_IMAGE
+  
+  # Explicit image provided, no bundle access needed
+  PREVIOUS_RELEASE_IMAGE :=$(call FullPath,$(ALT_PREVIOUS_RELEASE_IMAGE))
+
+else
+  
+  # PREVIOUS_RELEASE_PATH: path to where previous release bundles are
+  ifdef ALT_PREVIOUS_RELEASE_PATH
+    PREVIOUS_RELEASE_PATH :=$(call OptFullPath,$(ALT_PREVIOUS_RELEASE_PATH))
+  else
+    PREVIOUS_RELEASE_PATH := \
+	$(call DirExists,$(PREVIOUS_FCS_RE_AREA)/bundles/$(PLATFORM)-$(ARCH),,)
+  endif
+
+  # Depending on if we have access to these bundles
+  ifeq ($(PREVIOUS_RELEASE_PATH),)
+    # Use images in re area or BOOTDIR (which is normally the previous release)
+    PREVIOUS_RELEASE_IMAGE := \
+         $(call DirExists,$(PREVIOUS_FCS_RE_AREA)/binaries/$(PLATFORM)-$(ARCH),$(BOOTDIR),)
+  else
+    # Get names of and paths to bundles
+    PREVIOUS_RELEASE_PATH:=$(call AltCheckSpaces,PREVIOUS_RELEASE_PATH)
+    export PREVIOUS_RELEASE_PATH
+  
+    # PREVIOUS_JDK_FILE: filename of install bundle for previous JDK
+    ifdef ALT_PREVIOUS_JDK_FILE
+      PREVIOUS_JDK_FILE  =$(ALT_PREVIOUS_JDK_FILE)
+    else
+      PREVIOUS_JDK_FILE = \
+	  jdk-$(PREVIOUS_JDK_UNDERSCORE_VERSION)-$(PLATFORM)-$(ARCH)$(BUNDLE_FILE_SUFFIX)
+    endif
+    export PREVIOUS_JDK_FILE
+    PREVIOUS_JDK_FILE:=$(call AltCheckSpaces,PREVIOUS_JDK_FILE)
+
+    # PREVIOUS_JRE_FILE: filename of install bundle for previous JRE
+    ifdef ALT_PREVIOUS_JRE_FILE
+      PREVIOUS_JRE_FILE  =$(ALT_PREVIOUS_JRE_FILE)
+    else
+      PREVIOUS_JRE_FILE = \
+	  jre-$(PREVIOUS_JDK_UNDERSCORE_VERSION)-$(PLATFORM)-$(ARCH)$(BUNDLE_FILE_SUFFIX)
+    endif
+    export PREVIOUS_JRE_FILE
+    PREVIOUS_JRE_FILE:=$(call AltCheckSpaces,PREVIOUS_JRE_FILE)
+   
+    # Paths to these bundles
+    PREVIOUS_JRE_BUNDLE = $(PREVIOUS_RELEASE_PATH)/$(PREVIOUS_JRE_FILE)
+    PREVIOUS_JDK_BUNDLE = $(PREVIOUS_RELEASE_PATH)/$(PREVIOUS_JDK_FILE)
+  endif
+
+endif
+
+# Indicate we are using an image comparison
+ifneq ($(PREVIOUS_RELEASE_IMAGE),)
+    PREVIOUS_RELEASE_PATH = USING-PREVIOUS_RELEASE_IMAGE
+    PREVIOUS_JRE_BUNDLE   = USING-PREVIOUS_RELEASE_IMAGE
+    PREVIOUS_JDK_BUNDLE   = USING-PREVIOUS_RELEASE_IMAGE
+endif
+
+# CACERTS_FILE: if OPENJDK is false and the internal version of the file 
+#		(that is, non-empty) is available, use it, otherwise use an 
+#		empty keystore.
+#
+# We put this variable here for sanity checks and in case another
+# components will need to know which cacerts file is being used.
+#
+ifdef ALT_CACERTS_FILE
+  CACERTS_FILE = $(ALT_CACERTS_FILE)
+else
+  CACERTS_EXT   = $(SHARE_SRC)/lib/security/cacerts
+  ifdef OPENJDK
+    CACERTS_FILE  :=$(CACERTS_EXT)
+  else # (!OPENJDK)
+    CACERTS_INT   = $(CLOSED_SHARE_SRC)/lib/security/cacerts.internal
+    CACERTS_FILE  :=$(call FileExists,$(CACERTS_INT),$(CACERTS_EXT))
+  endif # (OPENJDK)
+endif
+CACERTS_FILE:=$(call AltCheckSpaces,CACERTS_FILE)
+
+#
+# When signing the JCE framework and provider, we could be using built
+# bits on a read-only filesystem.  If so, this test will fail and crash
+# the build.
+#
+ifndef IGNORE_WRITABLE_OUTPUTDIR_TEST
+# Create the output directory and make sure it exists and is writable
+_create_outputdir:=$(shell $(MKDIR) -p "$(OUTPUTDIR)" > $(DEV_NULL) 2>&1)
+ifeq ($(call WriteDirExists,$(OUTPUTDIR),/dev/null),/dev/null)
+  _outputdir_error:=$(error "ERROR: OUTPUTDIR '$(OUTPUTDIR)' not created or not writable")
+endif
+endif
+
+# Define absolute path if needed and check for spaces and null value
+ifndef ABS_OUTPUTDIR
+  ifdef _OUTPUTDIRNAME
+    #Could not define this at the same time as _OUTPUTDIRNAME as FullPath is not defined at that point
+    ABS_BUILD_PARENT_DIRECTORY:=$(call FullPath,$(BUILD_PARENT_DIRECTORY))
+    ABS_OUTPUTDIR:=$(ABS_BUILD_PARENT_DIRECTORY)/build/$(_OUTPUTDIRNAME)
+  else
+    ABS_OUTPUTDIR:=$(call FullPath,$(OUTPUTDIR))
+  endif
+endif
+ABS_OUTPUTDIR:=$(call AltCheckSpaces,ABS_OUTPUTDIR)
+# Make doubly sure this is a full path
+ifeq ($(call AbsPwdPathCheck,$(ABS_OUTPUTDIR)), )
+  ifdef ALT_OUTPUTDIR
+    _outputdir_error:=$(error "ERROR: Trouble with the absolute path for OUTPUTDIR '$(OUTPUTDIR)', was ALT_OUTPUTDIR '$(ALT_OUTPUTDIR)' an absolute path?")
+  else
+    _outputdir_error:=$(error "ERROR: Trouble with the absolute path for OUTPUTDIR '$(OUTPUTDIR)'")
+  endif
+endif
+_dir1:=$(call FullPath,$(ABS_OUTPUTDIR))
+_dir2:=$(call FullPath,$(OUTPUTDIR))
+ifneq ($(_dir1),$(_dir2))
+  _outputdir_error:=$(error "ERROR: ABS_OUTPUTDIR '$(ABS_OUTPUTDIR)' is not the same directory as OUTPUTDIR '$(OUTPUTDIR)', '$(_dir1)'!='$(_dir2)'")
+endif
+
+# Bin directory
+#   NOTE: ISA_DIR is usually empty, on Solaris it might be /sparcv9 or /amd64
+BINDIR      = $(OUTPUTDIR)/bin$(ISA_DIR)
+
+# MOZILLA_HEADERS_PATH: path to mozilla header files for plugin
+ifdef ALT_MOZILLA_HEADERS_PATH
+  MOZILLA_HEADERS_PATH :=$(call FullPath,$(ALT_MOZILLA_HEADERS_PATH))
+else
+  MOZILLA_HEADERS_PATH  =$(JDK_DEVTOOLS_DIR)/share/plugin
+endif
+MOZILLA_HEADERS_PATH:=$(call AltCheckSpaces,MOZILLA_HEADERS_PATH)
+
+# CUPS_HEADERS_PATH: path to Cups headers files for Unix printing
+#ifneq ($(PLATFORM), windows)
+#JDK_CUPS_HEADERS_PATH=$(JDK_DEVTOOLS_DIR)/share/cups/include
+#  ifdef ALT_CUPS_HEADERS_PATH
+#     CUPS_HEADERS_PATH:=$(call FullPath,$(ALT_CUPS_HEADERS_PATH))
+#     CUPS_HEADERS_PATH:=$(call AltCheckValue,CUPS_HEADERS_PATH)
+#  else 
+#    CUPS_HEADERS_PATH:= \
+#      $(shell if [ -d "$(JDK_CUPS_HEADERS_PATH)" ]; then \
+#        echo "$(JDK_CUPS_HEADERS_PATH)"; \
+#      else \
+#         echo "$(_CUPS_HEADERS_PATH)";\
+#      fi)
+#  endif
+#endif
+
+# Utilities ant
+ifeq ($(PLATFORM), windows)
+  ifeq ($(ANT_HOME),)
+    ANT_HOME := $(call DirExists,$(JDK_DEVTOOLS_DIR)/share/ant/latest,,)
+  endif
+endif
+
+# There are few problems with ant we need to workaround:
+#  1) ant is using temporary directory java.io.tmpdir
+#     However, this directory is not unique enough and two separate ant processes
+#     can easily end up using the exact same temp directory. This may lead to weird build failures
+#     To workaround this we will define tmp dir explicitly
+#  2) ant attempts to detect JDK location based on java.exe location
+#     This is fragile as developer may have JRE first on the PATH. 
+#     To workaround this we will specify JAVA_HOME explicitly
+
+ANT_TMPDIR = $(ABS_OUTPUTDIR)/tmp
+ANT_WORKAROUNDS = ANT_OPTS=-Djava.io.tmpdir='$(ANT_TMPDIR)' JAVA_HOME='$(BOOTDIR)'
+
+ifeq ($(ANT_HOME),)
+  ANT = $(ANT_WORKAROUNDS) ant
+else
+  ANT = $(ANT_WORKAROUNDS) $(ANT_HOME)/bin/ant
+endif
+
+ifdef ALT_COPYRIGHT_YEAR
+  COPYRIGHT_YEAR = $(ALT_COPYRIGHT_YEAR)
+else
+  COPYRIGHT_YEAR = $(shell $(DATE) '+%Y')
+endif
+
+# Create file with source information
+SOURCE_TIPS=$(ABS_OUTPUTDIR)/source_tips
+
+# The source tips can come from the Mercurial repository, or in the files
+#   $(HGTIP_FILENAME) which contains the tip but is also positioned in the same
+#   directory as the original $(HGDIR) directory.
+#   These should not be := assignments, only used from the root Makefile.
+HG_VERSION = $(shell $(HG) version 2> $(DEV_NULL))
+HG_DIRECTORY=.hg
+HGTIP_FILENAME=.hgtip
+HG_SEARCH = ./REPO ./*/REPO ./*/*/REPO ./*/*/*/REPO
+REPO_LIST = $(patsubst ./%,%,$(patsubst %/,%,$(sort $(dir \
+    $(shell ( $(LS) -d $(HG_SEARCH:%/REPO=%/$(HG_DIRECTORY)) ; \
+              $(LS)    $(HG_SEARCH:%/REPO=%/$(HGTIP_FILENAME)) ) \
+	        2> $(DEV_NULL))))))
+
+# Emit the repo:tip pairs to $@
+define GetSourceTips
+for i in $(REPO_LIST) IGNORE ; do \
+  if [ "$${i}" = "IGNORE" ] ; then \
+    continue; \
+  elif [ -d $${i}/$(HG_DIRECTORY) -a "$(HG_VERSION)" != "" ] ; then \
+    $(PRINTF) " %s:%s" \
+      "$${i}" `$(HG) tip --repository $${i} --template '{node|short}\n'` ; \
+  elif [ -f $${i}/$(HGTIP_FILENAME) ] ; then \
+    $(PRINTF) " %s:%s" \
+      "$${i}" `$(CAT) $${i}/$(HGTIP_FILENAME)` ; \
+  fi; \
+done >> $@
+$(PRINTF) "\n" >> $@
+endef
+
+# Create the HGTIP_FILENAME file
+define CreateHgTip
+$(HG) tip --repository $1 --template '{node|short}\n' > $1/$(HGTIP_FILENAME);\
+$(ECHO) $1/$(HGTIP_FILENAME)
+endef
+
+# Get the compiler specific settings (will run the compiler to find out)
+#   NOTE: COMPILER_PATH must be set by this time.
+#   Up until we include this file, we don't know what specific compiler
+#   version is actually being used (i.e. what is in PATH or COMPILER_PATH).
+include $(JDK_MAKE_SHARED_DIR)/Compiler-$(CC_VERSION).gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Platform.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,526 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Shared platform (OS/ARCH) variable settings for the JDK builds.
+#
+# Includes basic system requirements, versions of utilities required,
+#   suffixes on files, and basic defaults attributed to the build platform.
+#
+
+#
+# Assumes some basic unix system utilities (e.g. uname) are in the search path
+#   in order to figure out the system.
+#
+
+ifndef PLATFORM_SHARED
+
+PLATFORM_SHARED=done
+
+# Possible Input variables:
+#     ARCH_DATA_MODEL             32 or 64, default to 32
+#     USER, LOGNAME               user name (runs logname, or id if not set)
+#     PROCESSOR_IDENTIFIER        windows only: needed in environment
+#
+# (Also gets input by running the utilities uname, logname, isainfo, or id.)
+#
+# Variables set by this file:
+#     SYSTEM_UNAME                what 'uname' says this system is
+#     USER                        login name of user (minus blanks)
+#     PLATFORM                    windows, solaris, or linux
+#     VARIANT                     OPT or DBG, OPT is the default
+#     TEMP_DISK                   /tmp or C:/temp
+#     ARCH_DATA_MODEL             32 or 64
+#     ARCH                        sparc, sparcv9, i586, amd64, or ia64
+#     ARCH_FAMILY                 sparc or i586
+#     ARCHPROP                    sparc or x86
+#     ARCH_VM_SUBDIR              jre/bin, jre/lib/sparc, etc.
+#     LIBARCH                     sparc, sparcv9, i386, amd64, or ia64
+#     DEV_NULL                    destination of /dev/null, NUL or /dev/NULL
+#     CLASSPATH_SEPARATOR         separator in classpath, ; or :
+#     LIB_PREFIX                  dynamic or static library prefix, lib or empty
+#     LIB_SUFFIX                  static library file suffix, .lib or .a?
+#     LIBRARY_SUFFIX              dynamic library file suffix, .dll or .so
+#     OBJECT_SUFFIX               object file suffix, .o or .obj
+#     EXE_SUFFIX                  executable file suffix, .exe or empty
+#     BUNDLE_FILE_SUFFIX          suffix for bundles: .tar or .tar.gz
+#     ISA_DIR                     solaris only: /sparcv9 or /amd64
+#     LIBARCH32                   solaris only: sparc or i386
+#     LIBARCH64                   solaris only: sparcv9 or amd64
+#     USING_CYGWIN                windows only: true or false
+#     ISHIELD_TEMP_MIN            windows only: minimum disk space in temp area
+
+# Only run uname once in this make session.
+ifndef SYSTEM_UNAME
+  SYSTEM_UNAME := $(shell uname)
+  export SYSTEM_UNAME
+endif
+
+#
+# Prune out all known SCM (Source Code Management) directories
+# so they will not be included when copying directory trees
+# or packaging up .jar files, etc.  This applies to all workspaces.
+#
+SCM_DIRs = .hg .svn CVS RCS SCCS Codemgr_wsdata deleted_files .hgignore .hgtags
+# When changing SCM_DIRs also change SCM_DIRS_rexp and SCM_DIRS_prune:
+SCM_DIRS_rexp = ".hg|.svn|CVS|RCS|SCCS|Codemgr_wsdata|deleted_files|.hgignore|.hgtags"
+SCM_DIRS_prune = \( -name .hg -o -name .svn -o -name CVS -o -name RCS -o -name SCCS -o -name Codemgr_wsdata -o -name deleted_files -o -name .hgignore -o -name .hgtags \) -prune
+
+# Don't define this unless it's not defined
+ifndef VARIANT
+  VARIANT=OPT
+endif
+
+# Platform settings specific to Solaris
+ifeq ($(SYSTEM_UNAME), SunOS)
+  PLATFORM = solaris
+  # Solaris sparc build can be either 32-bit or 64-bit.
+  #   Default to 32, but allow explicit setting to 32 or 64.
+  ifndef ARCH_DATA_MODEL
+    ARCH_DATA_MODEL=32
+  endif
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    processor := $(shell uname -p)
+    archExpr = case "$(processor)" in  \
+                i[3-9]86) \
+                    echo i586 \
+                    ;; \
+                sparc*)  \
+                    echo sparc \
+                    ;; \
+                *) \
+                    echo $(processor)  \
+                    ;; \
+        esac
+    ARCH        := $(shell $(archExpr))
+  else
+    ARCH := $(shell isainfo -n)
+    # ISA_DIR is used to locate 64-bit specific libraries which are generally
+    # in the same general place as other libraries under the ./$(ARCH) directory
+    ISA_DIR = /$(ARCH)
+  endif
+  # Need to maintain the jre/lib/i386 location for 32-bit Intel
+  ifeq ($(ARCH), i586)
+     ARCH_FAMILY = $(ARCH)
+     LIBARCH     = i386
+     # Value of Java os.arch property
+     ARCHPROP    = x86
+  else
+     ifeq ($(ARCH), amd64)
+        ARCH_FAMILY = i586
+     else
+        ARCH_FAMILY = sparc
+     endif
+     LIBARCH  = $(ARCH)
+     # Value of Java os.arch property
+     ARCHPROP = $(LIBARCH)
+  endif
+  # The two LIBARCH names
+  ifeq ($(ARCH_FAMILY), sparc)
+    LIBARCH32 = sparc
+    LIBARCH64 = sparcv9
+  else
+    LIBARCH32 = i386
+    LIBARCH64 = amd64
+  endif
+  # Suffix for file bundles used in previous release
+  BUNDLE_FILE_SUFFIX=.tar
+  # How much RAM does this machine have (zones send an error to stderr):
+  MB_OF_MEMORY:=$(shell /usr/sbin/prtconf 2>/dev/null | fgrep 'Memory size:' | expand | cut -d' ' -f3)
+endif
+
+# Platform settings specific to Linux
+ifeq ($(SYSTEM_UNAME), Linux)
+  PLATFORM = linux
+  # Arch and OS name/version
+  ifdef CROSS_COMPILE_ARCH
+    mach := $(CROSS_COMPILE_ARCH)
+  else
+    mach := $(shell uname -m)
+  endif
+  archExpr = case "$(mach)" in \
+                i[3-9]86) \
+                    echo i586 \
+                    ;; \
+                ia64) \
+                    echo ia64 \
+                    ;; \
+                x86_64) \
+                    echo amd64 \
+                    ;; \
+                sparc*) \
+                    echo sparc \
+                    ;; \
+                arm*) \
+                    echo arm \
+                    ;; \
+                *) \
+                    echo $(mach) \
+                    ;; \
+      esac
+  ARCH        := $(shell $(archExpr) )
+  ARCH_FAMILY := $(ARCH)
+
+  # Linux builds may be 32-bit or 64-bit data model.
+  ifeq ($(ARCH), sparc)
+    # Linux sparc build can be either 32-bit or 64-bit.
+    #   Default to 32, but allow explicit setting to 32 or 64.
+    ifndef ARCH_DATA_MODEL
+      ARCH_DATA_MODEL=32
+    endif
+    ifeq ($(ARCH_DATA_MODEL), 32)
+      ARCH=sparc
+    else
+      ARCH=sparcv9
+    endif
+  else
+    # Most archs are 32-bit
+    ifndef ARCH_DATA_MODEL
+      ARCH_DATA_MODEL=32
+      ifeq ($(ARCH), amd64)
+        ARCH_DATA_MODEL=64
+      endif
+      ifeq ($(ARCH), ia64)
+        ARCH_DATA_MODEL=64
+      endif
+    endif
+  endif
+
+  # Need to maintain the jre/lib/i386 location for 32-bit Intel
+  ifeq ($(ARCH), i586)
+    LIBARCH = i386
+  else
+    LIBARCH = $(ARCH)
+  endif
+
+  # Value of Java os.arch property
+  ARCHPROP  = $(LIBARCH)
+
+  # Suffix for file bundles used in previous release
+  BUNDLE_FILE_SUFFIX=.tar.gz
+  # How much RAM does this machine have:
+  MB_OF_MEMORY := $(shell free -m | fgrep Mem: | awk '{print $$2;}' )
+endif
+
+ifeq ($(SYSTEM_UNAME), Darwin)
+  PLATFORM = macosx
+  OS_NAME = darwin
+  OS_VENDOR = Apple
+  GB_OF_MEMORY := $(shell system_profiler SPHardwareDataType | fgrep Memory: | awk '{print $$2}')
+  MB_OF_MEMORY := $(shell expr ${GB_OF_MEMORY} '*' 1024)
+endif
+
+# Platform settings specific to BSD/Mac OS X
+ifeq ($(PLATFORM), macosx)
+  OS_VERSION := $(shell uname -r)
+
+  # Arch and OS name/version
+  # Darwin x86 builds are i386/amd64 universal by default.
+  # Allow arch to be set from the environment to avoid this.
+  ifeq ($(origin ARCH), undefined)
+   ifeq ($(PLATFORM), macosx)
+#     ifdef OPENJDK -- when universal 32/64 binaries available in Hotspot
+#        mach := universal
+#     else
+        mach := x86_64
+#     endif
+   else
+    mach := $(shell uname -m)
+   endif
+  else
+   mach := $(ARCH)
+  endif
+
+  archExpr = case "$(mach)" in \
+                i[3-9]86) \
+                    echo i586 \
+                    ;; \
+                sparc64) \
+                    echo sparcv9 \
+                    ;; \
+                sparc*) \
+                    echo sparc \
+                    ;; \
+                x86_64) \
+                    echo amd64 \
+                    ;; \
+                universal) \
+                    echo universal \
+                    ;; \
+                "Power Macintosh") \
+                    echo ppc \
+                    ;; \
+                *) \
+                    echo $(mach) \
+                    ;; \
+      esac
+  ARCH        := $(shell $(archExpr) )
+  ARCH_FAMILY := $(ARCH)
+
+  # i586, sparc, and ppc are 32 bit, amd64 and sparc64 are 64
+  # ARCH_DATA_MODEL does not exactly mean anything in universal
+  # but it has to be one or the other, so pick 32
+  ifneq (,$(findstring $(ARCH), i586 sparc ppc universal))
+    ARCH_DATA_MODEL=32
+  else
+    ARCH_DATA_MODEL=64
+  endif
+
+  # Need to maintain the jre/lib/i386 location for 32-bit Intel
+  ifeq ($(ARCH), i586)
+    LIBARCH = i386
+  else
+    LIBARCH = $(ARCH)
+  endif
+
+  # Value of Java os.arch property
+  ARCHPROP  = $(LIBARCH)
+
+  # Suffix for file bundles used in previous release
+  BUNDLE_FILE_SUFFIX=.tar.gz
+  # How much RAM does this machine have:
+endif
+
+# Windows with and without CYGWIN will be slightly different
+ifeq ($(SYSTEM_UNAME), Windows_NT)
+  PLATFORM = windows
+endif
+ifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME)))
+  PLATFORM = windows
+  USING_CYGWIN = true
+  export USING_CYGWIN
+  CYGPATH_CMD=cygpath -a -s -m
+  # Only run "cygpath /" once in this make session.
+  ifndef CYGWIN_HOME
+    CYGWIN_HOME := $(shell $(CYGPATH_CMD) /)
+    export CYGWIN_HOME
+  endif
+endif
+
+# Platform settings specific to Windows
+ifeq ($(PLATFORM), windows)
+  # Windows builds default to the appropriate for the underlaying
+  # architecture.
+  # Temporary disk area
+  TEMP_DISK=C:/temp
+  # GNU Make or MKS overrides $(PROCESSOR_ARCHITECTURE) to always
+  #  return "x86". Use the first word of $(PROCESSOR_IDENTIFIER) instead.
+  #  And sometimes PROCESSOR_IDENTIFIER is not defined at all
+  #  (in some restricted shells), so we use uname if we have to.
+  ifeq ($(PROCESSOR_IDENTIFIER),)
+    # Only run uname -m once in this make session.
+    ifndef SYSTEM_UNAME_M
+      SYSTEM_UNAME_M := $(shell uname -m)
+      export SYSTEM_UNAME_M
+    endif
+    PROC_ARCH:=$(SYSTEM_UNAME_M)
+  else
+    PROC_ARCH:=$(word 1, $(PROCESSOR_IDENTIFIER))
+  endif
+  # Cover all the possibilities, MKS uname, CYGWIN uname, PROCESSOR_IDENTIFIER
+  #    Get: X86, X64, or IA64
+  PROC_ARCH:=$(patsubst 386,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst 486,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst 586,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst 686,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst i386,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst i486,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst i586,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst i686,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst x86,X86,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst intel64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst Intel64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst INTEL64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst em64t,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst EM64T,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst amd64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst AMD64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst 8664,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst x86_64,X64,$(PROC_ARCH))
+  PROC_ARCH:=$(patsubst ia64,IA64,$(PROC_ARCH))
+  ifndef ARCH_DATA_MODEL
+    ifeq ($(PROC_ARCH),IA64)
+      ARCH_DATA_MODEL=64
+    else
+      ifeq ($(PROC_ARCH),X64)
+        ARCH_DATA_MODEL=64
+      else
+        ARCH_DATA_MODEL=32
+      endif
+    endif
+  endif
+  export ARCH_DATA_MODEL
+  ifeq ($(ARCH_DATA_MODEL), 64)
+    # If the user wants to perform a cross compile build then they must
+    # - set ARCH_DATA_MODEL=64 and either
+    #      + set ARCH to ia64 or amd64, or
+    ifeq ($(PROC_ARCH),X64)
+      ARCH=amd64
+    else
+      ifeq ($(PROC_ARCH),IA64)
+        ARCH=ia64
+      endif
+    endif
+    LIBARCH=$(ARCH)
+    # Value of Java os.arch property
+    ARCHPROP=$(LIBARCH)
+  else
+    # LIBARCH is used to preserve the jre/lib/i386 directory name for 32-bit intel
+    ARCH=i586
+    LIBARCH=i386
+    # Value of Java os.arch property
+    ARCHPROP=x86
+  endif
+  ARCH_FAMILY = $(ARCH)
+  # Where is unwanted output to be delivered?
+  # MKS uses the special file "NUL", cygwin uses the customary unix file.
+  ifeq ($(USING_CYGWIN),true)
+    DEV_NULL = /dev/null
+  else
+    DEV_NULL = NUL
+  endif
+  export DEV_NULL
+  # Classpath separator
+  CLASSPATH_SEPARATOR = ;
+  # The suffix used for object file (.o for unix .obj for windows)
+  OBJECT_SUFFIX = obj
+  # The suffix applied to executables (.exe for windows, nothing for solaris)
+  EXE_SUFFIX = .exe
+  # The prefix applied to library files (lib for solaris, nothing for windows)
+  LIB_PREFIX=
+  LIBRARY_SUFFIX = dll
+  LIB_SUFFIX     = lib
+  # User name determination (set _USER)
+  ifndef USER
+    ifdef USERNAME
+      _USER := $(USERNAME)
+    else
+      ifdef LOGNAME
+        _USER := $(LOGNAME)
+      else
+        _USER := $(shell id -un)
+      endif
+    endif
+  else
+    _USER:=$(USER)
+  endif
+  # Location of client/server directories
+  ARCH_VM_SUBDIR=jre/bin
+  # Suffix for file bundles used in previous release
+  BUNDLE_FILE_SUFFIX=.tar
+  # ISHIELD_TEMP_MIN is the difference of an empty C:\TEMP vs. one after a
+  #     bundles build on windows.
+  ISHIELD_TEMP_MIN=250000
+  # How much RAM does this machine have:
+  ifeq ($(JDK_HAS_MEM_INFO),)
+    MB_OF_MEMORY := 1024
+  endif
+endif
+
+# Unix type settings (same for all unix platforms)
+ifneq ($(PLATFORM), windows)
+  # Temporary disk area
+  TEMP_DISK=/tmp
+  # Where is unwanted output to be delivered?
+  DEV_NULL = /dev/null
+  export DEV_NULL
+  # Character used between entries in classpath 
+  CLASSPATH_SEPARATOR = :
+  # suffix used for object file (.o for unix .obj for windows)
+  OBJECT_SUFFIX = o
+  # The suffix applied to runtime libraries
+  LIBRARY_SUFFIX = so
+  # The suffix applied to link libraries
+  LIB_SUFFIX = so
+  # The suffix applied to executables (.exe for windows, nothing for solaris)
+  EXE_SUFFIX =
+  # The prefix applied to library files (lib for solaris, nothing for windows)
+  LIB_PREFIX = lib
+  # User name determination (set _USER)
+  ifndef USER
+    ifdef LOGNAME
+      _USER := $(LOGNAME)
+    else
+      _USER := $(shell logname)
+    endif
+  else
+    _USER:=$(USER)
+  endif
+  # Location of client/server directories
+  ARCH_VM_SUBDIR=jre/lib/$(LIBARCH)
+endif
+
+# Darwin-specific Overrides
+ifeq ($(SYSTEM_UNAME),Darwin)
+  # The suffix applied to runtime libraries
+  LIBRARY_SUFFIX = dylib
+  # The suffix applied to link libraries
+  ifeq ($(ARCH), universal)
+    LIB_SUFFIX = o
+  else
+    LIB_SUFFIX = a
+  endif
+
+  ifeq ($(PLATFORM), macosx)
+  	ARCH_VM_SUBDIR=jre/lib/$(LIBARCH)
+  endif
+endif
+
+# Machines with 512Mb or less of real memory are considered low memory
+#    build machines and adjustments will be made to prevent excessing
+#    system swapping during the build.
+ifeq ($(JDK_HAS_MEM_INFO),)
+  JDK_HAS_MEM_INFO=true
+  export JDK_HAS_MEM_INFO
+  ifneq ($(MB_OF_MEMORY),)
+    LOW_MEMORY_MACHINE := $(shell \
+      if [ $(MB_OF_MEMORY) -le 512 ] ; then \
+        echo "true"; \
+      else \
+        echo "false"; \
+      fi)
+    MAX_VM_MEMORY := 512
+    MIN_VM_MEMORY := $(MAX_VM_MEMORY)
+  else
+    MB_OF_MEMORY       := unknown
+    LOW_MEMORY_MACHINE := true
+    MAX_VM_MEMORY      := 384
+    MIN_VM_MEMORY      := 128
+  endif
+  export MB_OF_MEMORY
+  export LOW_MEMORY_MACHINE
+  export MAX_VM_MEMORY
+  export MIN_VM_MEMORY
+endif
+
+# If blanks in the username, use the first 4 words and pack them together
+_USER1:=$(subst ', ,$(_USER))
+_USER2:=$(subst ", ,$(_USER1))
+USER:=$(word 1,$(_USER2))$(word 2,$(_USER2))$(word 3,$(_USER2))$(word 4,$(_USER2))
+export USER
+
+export PLATFORM
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/PrivateDefs.gmk-example	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,19 @@
+
+# This file, when re-named to PrivateDefs.gmk will get included in the
+#   makefile definitions (before the ALT_ variables are read) so that you can
+#   override makefile settings permanently for a workspace.
+#   Use of this file will cause WARNING errors, repeatedly, for a reason.
+#
+# WARNING: Use with caution.
+#
+
+# EXAMPLE: Testing a special build of hotspot
+#    (this is the build/solaris/export-solaris-sparc directory from doing
+#     a 'cd hotspot/make; gnumake' build)
+#
+ifeq ($(PLATFORM),solaris)
+  ifeq ($(ARCH),sparc)
+    ALT_HOTSPOT_IMPORT_PATH=$(JDK_TOPDIR)/../export-solaris-sparc
+  endif
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/common/shared/Sanity-Settings.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,267 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Shared sanity settings file. Fills in the variable ALL_SETTINGS.
+#
+
+# On Windows in particular, it can happen that quotes get into the PATH
+#    variable. This is very bad, and must be caught early or you can
+#    see errors like: sh: -c: line 0: syntax error near unexpected token
+#
+ifneq ($(PATH), $(subst ",,$(PATH)))
+  dummy1:=$(error ERROR: PATH variable contains double quotes, fix your PATH.)
+endif
+ifneq ($(PATH), $(subst ',,$(PATH)))
+  dummy1:=$(error ERROR: PATH variable contains single quotes, fix your PATH.)
+endif
+
+# Used to add a heading to ALL_SETTINGS
+define addHeading
+"\n$1:\n"
+endef
+
+# Used to add a line to ALL_SETTINGS for an optional value
+#   (need if test for windows which has issues with ; characters in values)
+define addOptionalSetting
+$(if $($1)," $1 = $($1)\n"," $1 = $($1)\n")
+endef
+
+# Used to add a line to ALL_SETTINGS for something that must have a value
+define addRequiredSetting
+$(if $($1)," $1 = $($1)\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
+endef
+
+# Used to add a line to ALL_SETTINGS for something that must have a value
+define addRequiredVersionSetting
+$(if $($1)," $1 = $($1) [requires at least $(REQUIRED_$1)]\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
+endef
+
+# Used to add a series of lines to ALL_SETTINGS
+define addAltSetting
+" $1 = $($1)\n    ALT_$1 = $(ALT_$1)\n"
+endef
+
+# Variable that contains a string of all information
+
+# Make sure this is a 'do it now' variable.
+ALL_SETTINGS:=$(call addHeading,Bootstrap Settings)
+ALL_SETTINGS+=$(call addAltSetting,BOOTDIR)
+ALL_SETTINGS+=$(call addRequiredVersionSetting,BOOT_VER)
+ALL_SETTINGS+=$(call addAltSetting,OUTPUTDIR)
+ALL_SETTINGS+=$(call addRequiredSetting,ABS_OUTPUTDIR)
+
+
+ALL_SETTINGS+=$(call addHeading,Build Tool Settings)
+ALL_SETTINGS+=$(call addAltSetting,SLASH_JAVA)
+ALL_SETTINGS+=$(call addRequiredSetting,VARIANT)
+ALL_SETTINGS+=$(call addAltSetting,JDK_DEVTOOLS_DIR)
+ALL_SETTINGS+=$(call addOptionalSetting,ANT_HOME)
+ALL_SETTINGS+=$(call addAltSetting,UNIXCOMMAND_PATH)
+ALL_SETTINGS+=$(call addAltSetting,COMPILER_PATH)
+ALL_SETTINGS+=$(call addAltSetting,DEVTOOLS_PATH)
+ifeq ($(PLATFORM),linux)
+  ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,USRBIN_PATH)
+  ifndef OPENJDK
+    ALL_SETTINGS+=$(call addAltSetting,GCC29_COMPILER_PATH)
+  endif
+endif
+ifeq ($(PLATFORM),solaris)
+  ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
+  ifndef OPENJDK
+    ALL_SETTINGS+=$(call addAltSetting,GCC_COMPILER_PATH)
+  endif
+endif
+ifeq ($(PLATFORM),windows)
+  ifneq ($(MSVCRNN_DLL),)
+    ALL_SETTINGS+=$(call addAltSetting,MSVCRNN_DLL_PATH)
+  endif
+  ALL_SETTINGS+=$(call addRequiredSetting,INCLUDE)
+  ALL_SETTINGS+=$(call addRequiredSetting,LIB)
+endif
+ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_NAME)
+ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_VERSION)
+ifdef REQUIRED_CC_VER
+  ALL_SETTINGS+=$(call addRequiredVersionSetting,CC_VER)
+else
+  ALL_SETTINGS+=$(call addOptionalSetting,CC_VER)
+endif
+ifeq ($(PLATFORM),solaris)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    ifndef OPENJDK
+      ALL_SETTINGS+=$(call addRequiredVersionSetting,GCC_VER)
+    endif
+  endif
+endif
+ALL_SETTINGS+=$(call addRequiredVersionSetting,ZIP_VER)
+ALL_SETTINGS+=$(call addRequiredVersionSetting,UNZIP_VER)
+ifeq ($(PLATFORM),windows)
+  ALL_SETTINGS+=$(call addRequiredVersionSetting,LINK_VER)
+  ALL_SETTINGS+=$(call addRequiredSetting,CC)
+  ALL_SETTINGS+=$(call addRequiredSetting,LINK)
+  ALL_SETTINGS+=$(call addRequiredSetting,DUMPBIN)
+endif
+ALL_SETTINGS+=$(call addRequiredVersionSetting,ANT_VER)
+ALL_SETTINGS+=$(call addRequiredSetting,TEMPDIR)
+
+
+ALL_SETTINGS+=$(call addHeading,Build Directives)
+ALL_SETTINGS+=$(call addOptionalSetting,OPENJDK)
+ALL_SETTINGS+=$(call addOptionalSetting,USE_HOTSPOT_INTERPRETER_MODE)
+ALL_SETTINGS+=$(call addOptionalSetting,PEDANTIC)
+ALL_SETTINGS+=$(call addOptionalSetting,DEV_ONLY)
+ALL_SETTINGS+=$(call addOptionalSetting,NO_DOCS)
+ALL_SETTINGS+=$(call addOptionalSetting,NO_DEMOS)
+ALL_SETTINGS+=$(call addOptionalSetting,NO_SAMPLES)
+ALL_SETTINGS+=$(call addOptionalSetting,NO_IMAGES)
+ALL_SETTINGS+=$(call addOptionalSetting,TOOLS_ONLY)
+ALL_SETTINGS+=$(call addOptionalSetting,INSANE)
+ALL_SETTINGS+=$(call addRequiredSetting,COMPILE_APPROACH)
+ifeq ($(COMPILE_APPROACH), parallel)
+  ALL_SETTINGS+=$(call addAltSetting,PARALLEL_COMPILE_JOBS)
+endif
+ALL_SETTINGS+=$(call addOptionalSetting,FASTDEBUG)
+ALL_SETTINGS+=$(call addRequiredSetting,COMPILER_WARNINGS_FATAL)
+ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_WARNING_LEVEL)
+ALL_SETTINGS+=$(call addOptionalSetting,SHOW_ALL_WARNINGS)
+ALL_SETTINGS+=$(call addRequiredSetting,INCREMENTAL_BUILD)
+ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHEST_OPT)
+ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHER_OPT)
+ALL_SETTINGS+=$(call addOptionalSetting,CC_LOWER_OPT)
+ALL_SETTINGS+=$(call addOptionalSetting,CXXFLAGS)
+ALL_SETTINGS+=$(call addOptionalSetting,CFLAGS)
+
+ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVA_CMD)
+ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVAC_CMD)
+ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAR_CMD)
+ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JARSIGNER_CMD)
+
+# These don't print out well with windows due to the ';' characters
+ifneq ($(PLATFORM),windows)
+  ALL_SETTINGS+=$(call addOptionalSetting,JAVAC_CMD)
+  ALL_SETTINGS+=$(call addOptionalSetting,JAVAH_CMD)
+  ALL_SETTINGS+=$(call addOptionalSetting,JAVADOC_CMD)
+endif
+
+ALL_SETTINGS+=$(call addHeading,Build Platform Settings)
+ALL_SETTINGS+=$(call addRequiredSetting,USER)
+ALL_SETTINGS+=$(call addRequiredSetting,PLATFORM)
+ALL_SETTINGS+=$(call addRequiredSetting,ARCH)
+ALL_SETTINGS+=$(call addRequiredSetting,LIBARCH)
+ALL_SETTINGS+=$(call addRequiredSetting,ARCH_FAMILY)
+ALL_SETTINGS+=$(call addRequiredSetting,ARCH_DATA_MODEL)
+ALL_SETTINGS+=$(call addRequiredSetting,ARCHPROP)
+ifeq ($(PLATFORM),windows)
+  ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_ARCHITECTURE)
+  ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_IDENTIFIER)
+  ifdef USING_CYGWIN
+    ALL_SETTINGS+=$(call addRequiredSetting,USING_CYGWIN)
+    ALL_SETTINGS+=$(call addRequiredVersionSetting,CYGWIN_VER)
+    ALL_SETTINGS+=$(call addRequiredSetting,CYGPATH_CMD)
+  else
+    ALL_SETTINGS+=$(call addRequiredVersionSetting,MKS_VER)
+    ALL_SETTINGS+=$(call addOptionalSetting,DOSNAME_CMD)
+  endif
+endif
+ifeq ($(PLATFORM),linux)
+  ifdef REQUIRED_ALSA_VERSION
+    ALL_SETTINGS+=$(call addRequiredSetting,ALSA_VERSION)
+  endif
+endif
+ALL_SETTINGS+=$(call addRequiredVersionSetting,OS_VERSION)
+ALL_SETTINGS+=$(call addOptionalSetting,OS_VARIANT_NAME)
+ALL_SETTINGS+=$(call addOptionalSetting,OS_VARIANT_VERSION)
+ALL_SETTINGS+=$(call addRequiredSetting,MB_OF_MEMORY)
+
+
+ALL_SETTINGS+=$(call addHeading,GNU Make Settings)
+ALL_SETTINGS+=$(call addRequiredSetting,MAKE)
+ALL_SETTINGS+=$(call addRequiredVersionSetting,MAKE_VER)
+ALL_SETTINGS+=$(call addOptionalSetting,MAKECMDGOALS)
+ALL_SETTINGS+=$(call addOptionalSetting,MAKEFLAGS)
+ALL_SETTINGS+=$(call addRequiredSetting,SHELL)
+
+
+ALL_SETTINGS+=$(call addHeading,Target Build Versions)
+ALL_SETTINGS+=$(call addRequiredSetting,JDK_VERSION)
+ALL_SETTINGS+=$(call addOptionalSetting,MILESTONE)
+ALL_SETTINGS+=$(call addOptionalSetting,RELEASE)
+ALL_SETTINGS+=$(call addRequiredSetting,FULL_VERSION)
+ALL_SETTINGS+=$(call addOptionalSetting,BUILD_NUMBER)
+
+
+ALL_SETTINGS+=$(call addHeading,External File/Binary Locations)
+ALL_SETTINGS+=$(call addRequiredSetting,USRJDKINSTANCES_PATH)
+ALL_SETTINGS+=$(call addAltSetting,BUILD_JDK_IMPORT_PATH)
+ALL_SETTINGS+=$(call addAltSetting,JDK_IMPORT_PATH)
+ALL_SETTINGS+=$(call addAltSetting,LANGTOOLS_DIST)
+ALL_SETTINGS+=$(call addAltSetting,CORBA_DIST)
+ALL_SETTINGS+=$(call addAltSetting,JAXP_DIST)
+ALL_SETTINGS+=$(call addAltSetting,JAXWS_DIST)
+ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_DOCS_IMPORT_PATH)
+ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_IMPORT_PATH)
+ifeq ($(ARCH_DATA_MODEL), 32)
+  ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_CLIENT_PATH)
+endif
+ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_SERVER_PATH)
+ifeq ($(PLATFORM),windows)
+  ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_LIB_PATH)
+  ALL_SETTINGS+=$(call addRequiredSetting,DXSDK_VER)
+  ALL_SETTINGS+=$(call addAltSetting,DXSDK_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,DXSDK_INCLUDE_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,DXSDK_LIB_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,WINDOWSSDKDIR)
+  ALL_SETTINGS+=$(call addRequiredSetting,RC)
+  ALL_SETTINGS+=$(call addRequiredSetting,REBASE)
+  ifndef OPENJDK
+    ALL_SETTINGS+=$(call addAltSetting,DEPLOY_MSSDK)
+    ALL_SETTINGS+=$(call addAltSetting,INSTALL_MSSDK)
+    ALL_SETTINGS+=$(call addAltSetting,WSCRIPT)
+    ALL_SETTINGS+=$(call addAltSetting,MSICERT)
+  endif
+endif
+ALL_SETTINGS+=$(call addAltSetting,CACERTS_FILE)
+ifndef OPENJDK
+  ALL_SETTINGS+=$(call addAltSetting,MOZILLA_HEADERS_PATH)
+endif
+ifneq ($(PLATFORM),windows)
+  ALL_SETTINGS+=$(call addAltSetting,CUPS_HEADERS_PATH)
+endif
+
+ifdef OPENJDK
+  ALL_SETTINGS+=$(call addHeading,OpenJDK-specific settings)
+  ALL_SETTINGS+=$(call addAltSetting,FREETYPE_HEADERS_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,FREETYPE_LIB_PATH)
+endif
+
+ifdef OPENJDK
+  ALL_SETTINGS+=$(call addHeading,Previous JDK Settings)
+  ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_PATH)
+  ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_VERSION)
+  ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_FILE)
+  ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JRE_FILE)
+  ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_IMAGE)
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/docs/CORE_PKGS.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,293 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# EXCLUDE_PKGS is the list of packages to exclude from the
+# Java API Specification.  Do not add these to CORE_PKGS.
+# The concatenation of EXCLUDE_PKGS and CORE_PKGS
+# should make up the list of all packages under the
+# src/shared/classes directory of the JDK source tree.
+#
+EXCLUDE_PKGS =             \
+  java.awt.peer            \
+  java.awt.dnd.peer        \
+  sun.*                    \
+  sunw.*                   \
+  com.sun.*                \
+  org.apache.*             \
+  org.jcp.*		   \
+  org.w3c.dom.css          \
+  org.w3c.dom.html         \
+  org.w3c.dom.stylesheets  \
+  org.w3c.dom.traversal    \
+  org.w3c.dom.ranges       \
+  org.w3c.dom.views        \
+  org.omg.stub.javax.management.remote.rmi
+
+#
+# ACTIVE_JSR_PKGS are packages that are part of an active JSR process--
+# one that is doing its own review. These packages are not included when
+# creating diff pages for the platform's JCP process.
+# 
+#       (see /java/pubs/apisrc/jdk/6.0/beta/make/docs/active_jsr_pkgs)
+# Note:
+# This is a list of regular expressions. So foo.* matches "foo" and "foo.bar".
+#
+ACTIVE_JSR_PKGS= \
+  java.lang.invoke \
+  java.sql  \
+  javax.activation  \
+  javax.annotation.*  \
+  javax.jws.*  \
+  javax.lang.*  \
+  javax.management.*  \
+  javax.script  \
+  javax.sql.*  \
+  javax.tools  \
+  javax.xml.*  \
+  org.w3c.*  \
+  org.xml.sax
+
+#
+# CORE_PKGS is the list of packages that form the
+# Java API Specification.
+#
+### ***IMPORTANT NOTE***
+### There is also a "REGEXP" variable in the docs/makefile that
+### determines which table the packages go in on the main page.
+### Currently, there is only table ("Platform Packages") and
+### everything goes in it, so REGEXP is "*". But if that policy
+### changes, packages added will need to be reflected in  that
+### list of wildcard expressions, as well.
+###
+CORE_PKGS =                                      \
+  java.applet                                    \
+  java.awt                                       \
+  java.awt.color                                 \
+  java.awt.datatransfer                          \
+  java.awt.dnd                                   \
+  java.awt.event                                 \
+  java.awt.font                                  \
+  java.awt.geom                                  \
+  java.awt.im                                    \
+  java.awt.im.spi                                \
+  java.awt.image                                 \
+  java.awt.image.renderable                      \
+  java.awt.print                                 \
+  java.beans                                     \
+  java.beans.beancontext                         \
+  java.io                                        \
+  java.lang                                      \
+  java.lang.annotation                           \
+  java.lang.instrument                           \
+  java.lang.invoke                               \
+  java.lang.management                           \
+  java.lang.ref                                  \
+  java.lang.reflect                              \
+  java.math                                      \
+  java.net                                       \
+  java.nio                                       \
+  java.nio.channels                              \
+  java.nio.channels.spi                          \
+  java.nio.charset                               \
+  java.nio.charset.spi                           \
+  java.nio.file					 \
+  java.nio.file.attribute			 \
+  java.nio.file.spi				 \
+  java.rmi                                       \
+  java.rmi.activation                            \
+  java.rmi.dgc                                   \
+  java.rmi.registry                              \
+  java.rmi.server                                \
+  java.security                                  \
+  java.security.acl                              \
+  java.security.cert                             \
+  java.security.interfaces                       \
+  java.security.spec                             \
+  java.sql                                       \
+  java.text                                      \
+  java.text.spi                                  \
+  java.util                                      \
+  java.util.concurrent                           \
+  java.util.concurrent.atomic                    \
+  java.util.concurrent.locks                     \
+  java.util.jar                                  \
+  java.util.logging                              \
+  java.util.prefs                                \
+  java.util.regex                                \
+  java.util.spi                                  \
+  java.util.zip                                  \
+  javax.accessibility                            \
+  javax.activation                               \
+  javax.activity                                 \
+  javax.annotation                               \
+  javax.annotation.processing                    \
+  javax.crypto                                   \
+  javax.crypto.interfaces                        \
+  javax.crypto.spec                              \
+  javax.imageio                                  \
+  javax.imageio.event                            \
+  javax.imageio.metadata                         \
+  javax.imageio.plugins.jpeg                     \
+  javax.imageio.plugins.bmp                      \
+  javax.imageio.spi                              \
+  javax.imageio.stream                           \
+  javax.jws                                      \
+  javax.jws.soap                                 \
+  javax.lang.model                               \
+  javax.lang.model.element                       \
+  javax.lang.model.type                          \
+  javax.lang.model.util                          \
+  javax.management                               \
+  javax.management.loading                       \
+  javax.management.monitor                       \
+  javax.management.relation                      \
+  javax.management.openmbean                     \
+  javax.management.timer                         \
+  javax.management.modelmbean                    \
+  javax.management.remote                        \
+  javax.management.remote.rmi                    \
+  javax.naming                                   \
+  javax.naming.directory                         \
+  javax.naming.event                             \
+  javax.naming.ldap                              \
+  javax.naming.spi                               \
+  javax.net                                      \
+  javax.net.ssl                                  \
+  javax.print                                    \
+  javax.print.attribute                          \
+  javax.print.attribute.standard                 \
+  javax.print.event                              \
+  javax.rmi                                      \
+  javax.rmi.CORBA                                \
+  javax.rmi.ssl                                  \
+  javax.script                                   \
+  javax.security.auth                            \
+  javax.security.auth.callback                   \
+  javax.security.auth.kerberos                   \
+  javax.security.auth.login                      \
+  javax.security.auth.spi                        \
+  javax.security.auth.x500                       \
+  javax.security.cert                            \
+  javax.security.sasl                            \
+  javax.sound.sampled                            \
+  javax.sound.sampled.spi                        \
+  javax.sound.midi                               \
+  javax.sound.midi.spi                           \
+  javax.sql                                      \
+  javax.sql.rowset                               \
+  javax.sql.rowset.serial                        \
+  javax.sql.rowset.spi                           \
+  javax.swing                                    \
+  javax.swing.border                             \
+  javax.swing.colorchooser                       \
+  javax.swing.filechooser                        \
+  javax.swing.event                              \
+  javax.swing.table                              \
+  javax.swing.text                               \
+  javax.swing.text.html                          \
+  javax.swing.text.html.parser                   \
+  javax.swing.text.rtf                           \
+  javax.swing.tree                               \
+  javax.swing.undo                               \
+  javax.swing.plaf                               \
+  javax.swing.plaf.basic                         \
+  javax.swing.plaf.metal                         \
+  javax.swing.plaf.multi                         \
+  javax.swing.plaf.nimbus                        \
+  javax.swing.plaf.synth                         \
+  javax.tools                                    \
+  javax.transaction                              \
+  javax.transaction.xa                           \
+  javax.xml.parsers                              \
+  javax.xml.bind                                 \
+  javax.xml.bind.annotation                      \
+  javax.xml.bind.annotation.adapters             \
+  javax.xml.bind.attachment                      \
+  javax.xml.bind.helpers                         \
+  javax.xml.bind.util                            \
+  javax.xml.soap                                 \
+  javax.xml.ws                                   \
+  javax.xml.ws.handler                           \
+  javax.xml.ws.handler.soap                      \
+  javax.xml.ws.http                              \
+  javax.xml.ws.soap                              \
+  javax.xml.ws.spi                               \
+  javax.xml.ws.spi.http                          \
+  javax.xml.ws.wsaddressing                      \
+  javax.xml.transform                            \
+  javax.xml.transform.sax                        \
+  javax.xml.transform.dom                        \
+  javax.xml.transform.stax                       \
+  javax.xml.transform.stream                     \
+  javax.xml                                      \
+  javax.xml.crypto				 \
+  javax.xml.crypto.dom				 \
+  javax.xml.crypto.dsig				 \
+  javax.xml.crypto.dsig.dom			 \
+  javax.xml.crypto.dsig.keyinfo			 \
+  javax.xml.crypto.dsig.spec			 \
+  javax.xml.datatype                             \
+  javax.xml.validation                           \
+  javax.xml.namespace                            \
+  javax.xml.xpath                                \
+  javax.xml.stream                               \
+  javax.xml.stream.events                        \
+  javax.xml.stream.util                          \
+  org.ietf.jgss                                  \
+  org.omg.CORBA                                  \
+  org.omg.CORBA.DynAnyPackage                    \
+  org.omg.CORBA.ORBPackage                       \
+  org.omg.CORBA.TypeCodePackage                  \
+  org.omg.stub.java.rmi                          \
+  org.omg.CORBA.portable                         \
+  org.omg.CORBA_2_3                              \
+  org.omg.CORBA_2_3.portable                     \
+  org.omg.CosNaming                              \
+  org.omg.CosNaming.NamingContextExtPackage      \
+  org.omg.CosNaming.NamingContextPackage         \
+  org.omg.SendingContext                         \
+  org.omg.PortableServer                         \
+  org.omg.PortableServer.CurrentPackage          \
+  org.omg.PortableServer.POAPackage              \
+  org.omg.PortableServer.POAManagerPackage       \
+  org.omg.PortableServer.ServantLocatorPackage   \
+  org.omg.PortableServer.portable                \
+  org.omg.PortableInterceptor                    \
+  org.omg.PortableInterceptor.ORBInitInfoPackage \
+  org.omg.Messaging                              \
+  org.omg.IOP                                    \
+  org.omg.IOP.CodecFactoryPackage                \
+  org.omg.IOP.CodecPackage                       \
+  org.omg.Dynamic                                \
+  org.omg.DynamicAny                             \
+  org.omg.DynamicAny.DynAnyPackage               \
+  org.omg.DynamicAny.DynAnyFactoryPackage        \
+  org.w3c.dom                                    \
+  org.w3c.dom.events                             \
+  org.w3c.dom.bootstrap                          \
+  org.w3c.dom.ls                                 \
+  org.xml.sax                                    \
+  org.xml.sax.ext                                \
+  org.xml.sax.helpers
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/docs/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1174 @@
+# Copyright (c) 1997, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Definitions for $(DOCSDIR), $(MKDIR), $(BINDIR), etc.
+#
+BUILDDIR=..
+PRODUCT=docs
+include $(BUILDDIR)/common/Defs.gmk
+
+# Get CopyrightLine macro and other shared variables
+include $(BUILDDIR)/common/shared/Defs-javadoc.gmk
+
+# Url to root of documents
+DOCSDIR_URL = {@docroot}/$(GET2DOCSDIR)
+
+# Url to copyright html file
+COPYRIGHT_URL-7 = $(DOCSDIR_URL)/legal/cpyr.html
+COPYRIGHT_URL = $(COPYRIGHT_URL-$(JDK_MINOR_VERSION))
+
+# Url to bug filing site
+BUG_SUBMIT_URL = http://bugreport.sun.com/bugreport/
+
+# Common line for how to submit a bug or rfe
+BUG_SUBMIT_LINE = <a href="$(BUG_SUBMIT_URL)">Submit a bug or feature</a>
+
+# Url to devdocs page
+#   Was: http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html
+DEV_DOCS_URL-5 = http://java.sun.com/j2se/1.5.0/docs/index.html
+DEV_DOCS_URL-6 = http://download.oracle.com/javase/6/docs/index.html
+DEV_DOCS_URL-7 = http://download.oracle.com/javase/7/docs/index.html
+DEV_DOCS_URL = $(DEV_DOCS_URL-$(JDK_MINOR_VERSION))
+DOCS_BASE_URL = http://download.oracle.com/javase/7/docs
+
+# Url to Java Language Spec
+#JLS3_URL = http://java.sun.com/docs/books/jls/
+
+# Common Java trademark line
+JAVA_TRADEMARK_LINE = Java is a trademark or registered trademark of \
+$(FULL_COMPANY_NAME) in the US and other countries.
+
+#
+# Definitions for imported components
+#
+include $(BUILDDIR)/common/internal/ImportComponents.gmk
+
+# We override whatever the max VM memory setting is here.
+#    NOTE: javadoc will not complete without these larger settings.
+#    WARNING: This could cause thrashing on low memory machines.
+ifeq ($(ARCH_DATA_MODEL),64)
+  MAX_VM_MEMORY = 1024
+else ifeq ($(ARCH),universal)
+  MAX_VM_MEMORY = 1024
+else
+  MAX_VM_MEMORY = 612
+endif
+
+# List of all possible directories for javadoc to look for sources
+#    NOTE: Quotes are required around sourcepath argument only on Windows.
+#          Otherwise, you get "No packages or classes specified." due 
+#          to $(CLASSPATH_SEPARATOR) being interpreted as an end of 
+#          command (newline or shell ; character)
+ALL_SOURCE_DIRS = $(SHARE_SRC)/classes \
+                  $(IMPORTSRCDIR) \
+                  $(GENSRCDIR) \
+                  $(SHARE_SRC)/../solaris/classes \
+	          $(SHARE_SRC)/../windows/classes \
+		  $(SHARE_SRC)/doc/stub
+
+# List of directories that actually exist
+ALL_EXISTING_SOURCE_DIRS := $(wildcard $(ALL_SOURCE_DIRS))
+
+# List with classpath separator between them
+EMPTY:=
+SPACE:= $(EMPTY) $(EMPTY)
+RELEASEDOCS_SOURCEPATH = \
+    $(subst $(SPACE),$(CLASSPATH_SEPARATOR),$(strip $(ALL_SOURCE_DIRS)))
+
+# Prep for javadoc creation, assumes $@ is an index.html file
+define prep-javadoc
+@if [ -f "$@" -a "$?" != "" ] ; then \
+  $(ECHO) "# Dependencies have changed: $?"; \
+fi
+$(RM) -r $(@D)
+$(MKDIR) -p $(@D)
+endef
+
+# A cache of the directories in ALL_SOURCE_DIRS
+DIRECTORY_CACHE = $(DOCSTMPDIR)/directory.cache
+
+# Given a list of packages, return a list of files or dirs to be dependent on
+#   (Currently only returning a list of directories)
+define PackageDependencies # packages
+$(shell							\
+  if [ "$1" != "" -a -f $(DIRECTORY_CACHE) ] ; then	\
+    for p in $1 ; do 					\
+      pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`;	\
+      $(CAT) $(DIRECTORY_CACHE) | $(GREP) "/$${pd}/" ; 	\
+    done; 						\
+  fi							\
+)
+endef
+
+# Given a list of packages, add packages that exist to $@, print summary
+define PackageFilter # packages
+@if [ "$1" != "" ] ; then 				\
+  for p in $1 ; do 					\
+    pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; 	\
+    found="false"; 					\
+    for cp in $(ALL_SOURCE_DIRS) ; do 			\
+      if [ -d $${cp}/$${pd} ] ; then 			\
+        $(ECHO) "$${p}" >> $@; 				\
+	found="true";					\
+	break; 						\
+      fi; 						\
+    done; 						\
+    if [ "$${found}" = "false" ] ; then 		\
+      $(ECHO) "WARNING: Package not found: $${p}"; 	\
+    fi; 						\
+  done; 						\
+fi
+endef
+
+# Print out a summary of the javadoc command about to be run
+define JavadocSummary # optionsfile packagesfile
+@$(ECHO) "# Summary for $@";\
+ $(ECHO) "# Options (`$(BASENAME) $1`):"; $(SED) -e 's@^@#   @' $1; \
+ $(ECHO) "# Packages (`$(BASENAME) $2`):";$(SED) -e 's@^@#   @' $2
+endef
+
+#
+# Temporary directory for javadoc creation
+#
+DOCSTMPDIR = $(TEMPDIR)/doctmp
+
+#
+# Different api directories created from root directory
+#
+COREAPI_DOCSDIR   = $(DOCSDIR)/api
+JDK_API_DOCSDIR   = $(DOCSDIR)/jdk/api
+JRE_API_DOCSDIR   = $(DOCSDIR)/jre/api
+PLATFORM_DOCSDIR  = $(DOCSDIR)/platform
+
+# The non-core api javadocs need to be able to access the root of the core
+#   api directory, so for jdk/api or jre/api to get to the core api/
+#   directory we would use this:
+JDKJRE2COREAPI    = ../../api
+
+# Common bottom argument
+define CommonBottom # year
+<font size="-1"><br> $(call CopyrightLine,,$1,)</font>
+endef
+
+# Common trademark bottom argument (Not sure why this is used sometimes)
+define CommonTrademarkBottom # year
+<font size="-1">\
+$(BUG_SUBMIT_LINE)<br>$(JAVA_TRADEMARK_LINE)<br>\
+$(call CopyrightLine,,$1,$(COMPANY_ADDRESS))\
+</font>
+endef
+
+# Common echo of option
+define OptionOnly # opt
+$(PRINTF) "%s\n" "$1"
+endef
+define OptionPair # opt arg
+$(PRINTF) "%s '%s'\n" "$1" '$2'
+endef
+define OptionTrip # opt arg arg
+$(PRINTF) "%s '%s' '%s'\n" "$1" '$2' '$3'
+endef
+
+# Core api bottom argument (with special sauce)
+COREAPI_BOTTOM = <font size="-1"> $(BUG_SUBMIT_LINE)\
+<br>For further API reference and developer documentation, \
+see <a href="$(DEV_DOCS_URL)" target="_blank">Java SE Documentation</a>. \
+That documentation contains more detailed, developer-targeted descriptions, \
+with conceptual overviews, definitions of terms, workarounds, \
+and working code examples.<br>\
+$(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\
+</font>
+
+# Common javadoc options used by all
+COMMON_JAVADOCFLAGS =					\
+                $(NO_PROPRIETARY_API_WARNINGS)          \
+		-quiet					\
+                -use					\
+                -keywords				\
+		$(ADDITIONAL_JAVADOCFLAGS)
+
+ifdef OPENJDK
+  ADDITIONAL_JAVADOCFLAGS =				\
+                -Xdocrootparent $(DOCS_BASE_URL)
+else
+  ADDITIONAL_JAVADOCFLAGS =
+endif
+
+# Draft used for non-fcs documents
+JDK_IS_FCS = false
+DRAFT_HEADER =
+ifeq ($(JDK_MINOR_VERSION),5)
+  JDK_IS_FCS = true
+endif
+ifeq ($(JDK_MINOR_VERSION),6)
+  JDK_IS_FCS = true
+endif
+ifeq ($(JDK_MINOR_VERSION),7)
+  JDK_IS_FCS = true
+endif
+ifeq ($(JDK_IS_FCS),false)
+  ifneq ($(MILESTONE), fcs)
+    DRAFT_HEADER = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
+    DRAFT_BOTTOM = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
+    DRAFT_WINTITLE = $(BUILD_NUMBER)
+    # Early access top text (not used in FCS releases)
+    COREAPI_TOP_EARLYACCESS = \
+<div style="background-color: \#EEEEEE"> \
+<div style="padding: 6px; margin-top: 2px; margin-bottom: 6px; \
+margin-left: 6px; margin-right: 6px; text-align: justify; \
+font-size: 80%; font-family: Helvetica, Arial, sans-serif; \
+font-weight: normal;"> \
+Please note that the specifications and other information \
+contained herein are not final and are subject to change. \
+The information is being made available to you solely for purpose of \
+evaluation. \
+</div> </div>
+  endif
+endif
+
+#################################################################
+
+#
+# CORE_PKGS environment variable has been moved to the following file
+#
+include CORE_PKGS.gmk
+
+#
+# Load environment variables for API package names that are not part of
+# the Java SE platform
+#
+include NON_CORE_PKGS.gmk
+
+#################################################################
+
+#
+# Default target is same as docs target, create core api and all others it can
+#
+
+all: docs
+docs: coredocs otherdocs
+
+#################################################################
+# Production Targets -- USE THESE TARGETS WHEN:
+#    a) You're generating docs outside of release engineering's
+#       standard control build.
+#    b) The docs will be pushed to the web and/or included in
+#       the downloaded doc bundle.
+#
+# See:  Notes.html#releaseTargets
+# Note: Spaces precede ifdef/ifndef indents. Tabs precede target commands (!)
+#
+
+sanitycheckcoredocs:
+	@$(ECHO) ""
+	@$(ECHO) "Building core api docs with these values:"
+	@$(ECHO) "    BUILD_NUMBER = $(BUILD_NUMBER)"
+	@$(ECHO) "    MILESTONE = $(MILESTONE)"
+	@$(ECHO) ""
+  ifeq ($(BUILD_NUMBER), b00)
+	@$(ECHO) "ERROR: Build number must be defined"
+	@$(ECHO) "MILESTONE is set to $(MILESTONE)"
+	@$(ECHO) ""
+	exit 1
+  endif
+
+#############################################################
+#
+# coredocs
+#
+COREAPI_DOCTITLE  = Java$(TRADEMARK) Platform, Standard Edition \
+$(JDK_MINOR_VERSION)<br>API Specification
+COREAPI_WINDOWTITLE  = Java Platform SE $(JDK_MINOR_VERSION)
+COREAPI_HEADER = \
+<strong>Java$(TRADEMARK)&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;$(JDK_MINOR_VERSION)</strong>
+
+# Java language specification cite
+TAG_JLS = jls:a:See <cite> \
+The Java&trade; Language Specification</cite>:
+
+# Overview file for core apis
+COREAPI_OVERVIEW = $(SHARE_SRC)/classes/overview-core.html
+
+# The index.html, options, and packages files
+COREAPI_INDEX_FILE    = $(COREAPI_DOCSDIR)/index.html
+COREAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/coredocs.options
+COREAPI_PACKAGES_FILE = $(DOCSTMPDIR)/coredocs.packages
+
+coredocs: $(COREAPI_INDEX_FILE)
+
+# Set relative location to core api document root
+$(COREAPI_INDEX_FILE): GET2DOCSDIR=..
+
+# Run javadoc if the index file is out of date or missing
+$(COREAPI_INDEX_FILE): $(COREAPI_OPTIONS_FILE) $(COREAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(COREAPI_OPTIONS_FILE),$(COREAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(COREAPI_OPTIONS_FILE) @$(COREAPI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(COREAPI_OPTIONS_FILE): $(COREAPI_OVERVIEW)
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ISO-8859-1)			; \
+	  $(call OptionPair,-tag,beaninfo:X)				; \
+	  $(call OptionPair,-tag,revised:X)				; \
+	  $(call OptionPair,-tag,since.unbundled:X)			; \
+	  $(call OptionPair,-tag,spec:X)				; \
+	  $(call OptionPair,-tag,specdefault:X)				; \
+	  $(call OptionPair,-tag,Note:X)				; \
+	  $(call OptionPair,-tag,ToDo:X)				; \
+          $(call OptionPair,-tag,$(TAG_JLS)) 				; \
+	  $(call OptionOnly,-splitIndex)				; \
+	  $(call OptionPair,-overview,$(COREAPI_OVERVIEW))		; \
+	  $(call OptionPair,-doctitle,$(COREAPI_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(COREAPI_WINDOWTITLE) $(DRAFT_WINTITLE)) ;\
+	  $(call OptionPair,-header,$(COREAPI_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(COREAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+        ) >> $@
+ifdef COREAPI_TOP_EARLYACCESS
+	@$(call OptionPair,-top,$(COREAPI_TOP_EARLYACCESS)) >> $@
+endif
+
+# Create a file with the package names in it
+$(COREAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(CORE_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(CORE_PKGS))
+
+#############################################################
+#
+# docletapidocs
+#
+
+# Part of langtools
+ifdef LANGTOOLS_DIST
+  ALL_OTHER_TARGETS += docletapidocs
+endif
+
+DOCLETAPI_DOCDIR       := $(JDK_API_DOCSDIR)/javadoc/doclet
+DOCLETAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
+DOCLETAPI_DOCTITLE     := Doclet API
+DOCLETAPI_WINDOWTITLE  := Doclet API
+DOCLETAPI_HEADER       := <strong>Doclet API</strong>
+DOCLETAPI_BOTTOM       := $(call CommonTrademarkBottom,$(DOCLETAPI_FIRST_COPYRIGHT_YEAR))
+DOCLETAPI_GROUPNAME    := Packages
+DOCLETAPI_REGEXP       := com.sun.javadoc
+# DOCLETAPI_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+DOCLETAPI_INDEX_FILE    = $(DOCLETAPI_DOCDIR)/index.html
+DOCLETAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/docletapi.options
+DOCLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/docletapi.packages
+
+docletapidocs: $(DOCLETAPI_INDEX_FILE)
+
+# Set relative location to core api document root
+$(DOCLETAPI_INDEX_FILE): GET2DOCSDIR=$(DOCLETAPI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(DOCLETAPI_OPTIONS_FILE),$(DOCLETAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(DOCLETAPI_OPTIONS_FILE) @$(DOCLETAPI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(DOCLETAPI_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-breakiterator)				; \
+	  $(call OptionPair,-doctitle,$(DOCLETAPI_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(DOCLETAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(DOCLETAPI_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(DOCLETAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-group,$(DOCLETAPI_GROUPNAME),$(DOCLETAPI_REGEXP)); \
+	  $(call OptionTrip,-linkoffline,$(DOCLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(DOCLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOCLETAPI_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(DOCLETAPI_PKGS))
+
+#############################################################
+#
+# tagletapidocs
+#
+
+# Part of langtools
+ifdef LANGTOOLS_DIST
+  ALL_OTHER_TARGETS += tagletapidocs
+endif
+
+TAGLETAPI_DOCDIR   := $(JDK_API_DOCSDIR)/javadoc/taglet
+TAGLETAPI2COREAPI  := ../../$(JDKJRE2COREAPI)
+TAGLETAPI_BOTTOM   := $(call CommonTrademarkBottom,$(TAGLETAPI_FIRST_COPYRIGHT_YEAR))
+# TAGLETAPI_FILE is located in NON_CORE_PKGS.gmk
+
+# Temporary directory (special generation rules)
+TAGLETAPI_TEMPDIR       = $(DOCSTMPDIR)/taglets_temp
+
+# The index.html, options, and packages files
+TAGLETAPI_INDEX_FILE    = $(TAGLETAPI_DOCDIR)/index.html
+TAGLETAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/tagletapi.options
+TAGLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/tagletapi.packages
+
+tagletapidocs: $(TAGLETAPI_INDEX_FILE)
+
+# Set relative location to core api document root
+$(TAGLETAPI_INDEX_FILE): GET2DOCSDIR=$(TAGLETAPI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(RM) -r $(TAGLETAPI_TEMPDIR)
+	$(MKDIR) -p $(TAGLETAPI_TEMPDIR)
+	$(call JavadocSummary,$(TAGLETAPI_OPTIONS_FILE),$(TAGLETAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(TAGLETAPI_TEMPDIR) \
+	  @$(TAGLETAPI_OPTIONS_FILE) @$(TAGLETAPI_PACKAGES_FILE)
+	cp -r $(TAGLETAPI_TEMPDIR)/com $(@D)
+	cp $(TAGLETAPI_TEMPDIR)/stylesheet.css $(@D)
+	$(RM) -r $(TAGLETAPI_TEMPDIR)
+
+# Create file with javadoc options in it
+$(TAGLETAPI_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nonavbar)					; \
+	  $(call OptionOnly,-noindex)					; \
+	  $(call OptionPair,-bottom,$(TAGLETAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(TAGLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(TAGLETAPI_PACKAGES_FILE): $(IMPORTSRCDIR)/$(TAGLETAPI_FILE)
+	$(prep-target)
+	@($(ECHO) "$(IMPORTSRCDIR)/$(TAGLETAPI_FILE)" ) > $@
+
+#############################################################
+#
+# domapidocs
+#
+
+ALL_OTHER_TARGETS += domapidocs
+
+DOMAPI_DOCDIR       := $(JRE_API_DOCSDIR)/plugin/dom
+DOMAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
+DOMAPI_DOCTITLE     := Common DOM API
+DOMAPI_WINDOWTITLE  := Common DOM API
+DOMAPI_HEADER       := <strong>Common DOM API</strong>
+DOMAPI_BOTTOM       := $(call CommonTrademarkBottom,$(DOMAPI_FIRST_COPYRIGHT_YEAR))
+DOMAPI_GROUPNAME    := Packages
+DOMAPI_REGEXP       := com.sun.java.browser.dom:org.w3c.dom*
+# DOMAPI_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+DOMAPI_INDEX_FILE    = $(DOMAPI_DOCDIR)/index.html
+DOMAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/domapi.options
+DOMAPI_PACKAGES_FILE = $(DOCSTMPDIR)/domapi.packages
+
+domapidocs: $(DOMAPI_INDEX_FILE)
+
+# Set relative location to core api document root
+$(DOMAPI_INDEX_FILE): GET2DOCSDIR=$(DOMAPI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(DOMAPI_OPTIONS_FILE),$(DOMAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(DOMAPI_OPTIONS_FILE) @$(DOMAPI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(DOMAPI_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-splitIndex)				; \
+	  $(call OptionPair,-doctitle,$(DOMAPI_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(DOMAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(DOMAPI_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(DOMAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-group,$(DOMAPI_GROUPNAME),$(DOMAPI_REGEXP)); \
+	  $(call OptionTrip,-linkoffline,$(DOMAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(DOMAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOMAPI_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(DOMAPI_PKGS))
+
+#############################################################
+#
+# jpdadocs
+#
+
+ALL_OTHER_TARGETS += jpdadocs
+
+jpdadocs: jdidocs jdwpdocs jvmtidocs
+
+#############################################################
+#
+# jdidocs
+#
+
+ALL_OTHER_TARGETS += jdidocs
+
+JDI_DOCDIR      := $(JDK_API_DOCSDIR)/jpda/jdi
+JDI2COREAPI     := ../../$(JDKJRE2COREAPI)
+JDI_DOCTITLE    := Java$(TRADEMARK) Debug Interface
+JDI_WINDOWTITLE := Java Debug Interface
+JDI_HEADER      := <strong>Java Debug Interface</strong>
+JDI_BOTTOM      := $(call CommonBottom,$(JDI_FIRST_COPYRIGHT_YEAR))
+JDI_OVERVIEW    := $(SHARE_SRC)/classes/jdi-overview.html
+# JDI_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+JDI_INDEX_FILE    = $(JDI_DOCDIR)/index.html
+JDI_OPTIONS_FILE  = $(DOCSTMPDIR)/jdi.options
+JDI_PACKAGES_FILE = $(DOCSTMPDIR)/jdi.packages
+
+jdidocs: $(JDI_INDEX_FILE)
+
+# Set relative location to core api document root
+$(JDI_INDEX_FILE): GET2DOCSDIR=$(JDI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(JDI_OPTIONS_FILE),$(JDI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(JDI_OPTIONS_FILE) @$(JDI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(JDI_OPTIONS_FILE): $(JDI_OVERVIEW)
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionPair,-overview,$(JDI_OVERVIEW))			; \
+	  $(call OptionPair,-doctitle,$(JDI_DOCTITLE))			; \
+	  $(call OptionPair,-windowtitle,$(JDI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
+	  $(call OptionPair,-header,$(JDI_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(JDI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(JDI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(JDI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDI_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(JDI_PKGS))
+
+#############################################################
+#
+# jdwpdocs
+#
+
+ALL_OTHER_TARGETS += jdwpdocs
+
+JDWP_DOCDIR     = $(PLATFORM_DOCSDIR)/jpda/jdwp
+JDWP_SPEC       = $(BUILDDIR)/jpda/jdwp/jdwp.spec
+
+jdwpdocs: $(JDWP_DOCDIR)/jdwp-protocol.html
+$(JDWP_DOCDIR)/jdwp-protocol.html: $(BUILD_TOOLS) $(JDWP_SPEC)
+	$(prep-javadoc)
+	$(TOOL_JDWPGEN) $(JDWP_SPEC) -doc $@
+
+#############################################################
+#
+# jvmtidocs
+#
+
+ALL_OTHER_TARGETS += jvmtidocs
+
+JVMTI_DOCDIR      = $(PLATFORM_DOCSDIR)/jvmti
+JVMTI_HTML        = $(HOTSPOT_DOCS_IMPORT_PATH)/platform/jvmti/jvmti.html
+
+jvmtidocs:  $(JVMTI_DOCDIR)/jvmti.html
+$(JVMTI_DOCDIR)/jvmti.html:
+	@$(prep-javadoc)
+	@if [ -f $(JVMTI_HTML) ] ; then		                           \
+	  $(ECHO) "$(CP) $(JVMTI_HTML) $@";                 	           \
+	  $(CP) $(JVMTI_HTML) $@; 	                 	           \
+	else 						                   \
+	  $(ECHO) "WARNING: Generated file does not exist: $(JVMTI_HTML)"; \
+	fi
+
+#############################################################
+#
+# jaasdocs
+#
+
+ALL_OTHER_TARGETS += jaasdocs
+
+JAAS_DOCDIR	 := $(JRE_API_DOCSDIR)/security/jaas/spec
+JAAS2COREAPI     := ../../../$(JDKJRE2COREAPI)
+JAAS_DOCTITLE    := Java$(TRADEMARK) Authentication and Authorization Service
+JAAS_WINDOWTITLE := Java Authentication and Authorization Service
+JAAS_HEADER      := <strong>Java Authentication and Authorization Service</strong>
+JAAS_BOTTOM      := $(call CommonBottom,$(JAAS_FIRST_COPYRIGHT_YEAR))
+# JAAS_PKGS is located in NON_CORE_PKGS.gmk
+JAAS_OVERVIEW    := $(SHARE_SRC)/classes/com/sun/security/auth/jaas-overview.html
+
+# The index.html, options, and packages files
+JAAS_INDEX_FILE    = $(JAAS_DOCDIR)/index.html
+JAAS_OPTIONS_FILE  = $(DOCSTMPDIR)/jaas.options
+JAAS_PACKAGES_FILE = $(DOCSTMPDIR)/jaas.packages
+
+jaasdocs: $(JAAS_INDEX_FILE)
+
+# Set relative location to core api document root
+$(JAAS_INDEX_FILE): GET2DOCSDIR=$(JAAS2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(JAAS_OPTIONS_FILE),$(JAAS_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(JAAS_OPTIONS_FILE) @$(JAAS_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(JAAS_OPTIONS_FILE): $(JAAS_OVERVIEW)
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionPair,-overview,$(JAAS_OVERVIEW))			; \
+	  $(call OptionPair,-doctitle,$(JAAS_DOCTITLE))			; \
+	  $(call OptionPair,-windowtitle,$(JAAS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
+	  $(call OptionPair,-header,$(JAAS_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(JAAS_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(JAAS2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(JAAS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JAAS_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(JAAS_PKGS))
+
+#############################################################
+#
+# jgssdocs
+#
+
+ALL_OTHER_TARGETS += jgssdocs
+
+JGSS_DOCDIR	 := $(JRE_API_DOCSDIR)/security/jgss/spec
+JGSS2COREAPI     := ../../../$(JDKJRE2COREAPI)
+JGSS_DOCTITLE    := Java$(TRADEMARK) GSS-API Utilities
+JGSS_WINDOWTITLE := Java GSS-API Utilities
+JGSS_HEADER      := <strong>Java GSS-API Utilities</strong>
+JGSS_BOTTOM      := $(call CommonBottom,$(JGSS_FIRST_COPYRIGHT_YEAR))
+JGSS_OVERVIEW    := $(SHARE_SRC)/classes/com/sun/security/jgss/jgss-overview.html
+# JGSS_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+JGSS_INDEX_FILE    = $(JGSS_DOCDIR)/index.html
+JGSS_OPTIONS_FILE  = $(DOCSTMPDIR)/jgss.options
+JGSS_PACKAGES_FILE = $(DOCSTMPDIR)/jgss.packages
+
+jgssdocs: $(JGSS_INDEX_FILE)
+
+# Set relative location to core api document root
+$(JGSS_INDEX_FILE): GET2DOCSDIR=$(JGSS2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(JGSS_OPTIONS_FILE),$(JGSS_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(JGSS_OPTIONS_FILE) @$(JGSS_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(JGSS_OPTIONS_FILE): $(JGSS_OVERVIEW)
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-overview,$(JGSS_OVERVIEW))			; \
+	  $(call OptionPair,-doctitle,$(JGSS_DOCTITLE))			; \
+	  $(call OptionPair,-windowtitle,$(JGSS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
+	  $(call OptionPair,-header,$(JGSS_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(JGSS_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(JGSS2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(JGSS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JGSS_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(JGSS_PKGS))
+
+#############################################################
+#
+# smartcardiodocs
+#
+
+ALL_OTHER_TARGETS += smartcardiodocs
+
+SMARTCARDIO_DOCDIR	:= $(JRE_API_DOCSDIR)/security/smartcardio/spec
+SMARTCARDIO2COREAPI     := ../../../$(JDKJRE2COREAPI)
+SMARTCARDIO_DOCTITLE    := Java$(TRADEMARK) Smart Card I/O
+SMARTCARDIO_WINDOWTITLE := Java Smart Card I/O
+SMARTCARDIO_HEADER      := <strong>Java Smart Card I/O</strong>
+SMARTCARDIO_BOTTOM      := $(call CommonBottom,$(SMARTCARDIO_FIRST_COPYRIGHT_YEAR))
+# SMARTCARDIO_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+SMARTCARDIO_INDEX_FILE    = $(SMARTCARDIO_DOCDIR)/index.html
+SMARTCARDIO_OPTIONS_FILE  = $(DOCSTMPDIR)/smartcardio.options
+SMARTCARDIO_PACKAGES_FILE = $(DOCSTMPDIR)/smartcardio.packages
+
+smartcardiodocs: $(SMARTCARDIO_INDEX_FILE)
+
+# Set relative location to core api document root
+$(SMARTCARDIO_INDEX_FILE): GET2DOCSDIR=$(SMARTCARDIO2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(SMARTCARDIO_OPTIONS_FILE),$(SMARTCARDIO_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(SMARTCARDIO_OPTIONS_FILE) @$(SMARTCARDIO_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(SMARTCARDIO_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-doctitle,$(SMARTCARDIO_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(SMARTCARDIO_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(SMARTCARDIO_HEADER)$(DRAFT_HEADER)); \
+	  $(call OptionPair,-bottom,$(SMARTCARDIO_BOTTOM)$(DRAFT_BOTTOM)); \
+	  $(call OptionTrip,-linkoffline,$(SMARTCARDIO2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(SMARTCARDIO_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SMARTCARDIO_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(SMARTCARDIO_PKGS))
+
+#############################################################
+#
+# httpserverdocs
+#
+
+ALL_OTHER_TARGETS += httpserverdocs
+
+HTTPSERVER_DOCDIR      := $(JRE_API_DOCSDIR)/net/httpserver/spec
+HTTPSERVER2COREAPI     := ../../../$(JDKJRE2COREAPI)
+HTTPSERVER_DOCTITLE    := Java$(TRADEMARK) HTTP Server
+HTTPSERVER_WINDOWTITLE := Java HTTP Server
+HTTPSERVER_HEADER      := <strong>Java HTTP Server</strong>
+HTTPSERVER_BOTTOM      := $(call CommonBottom,$(HTTPSERVER_FIRST_COPYRIGHT_YEAR))
+# HTTPSERVER_PKGS is located in NON_CORE_PKGS.gmk
+
+HTTPSERVER_INDEX_HTML    = $(HTTPSERVER_DOCDIR)/index.html
+HTTPSERVER_OPTIONS_FILE  = $(DOCSTMPDIR)/httpserver.options
+HTTPSERVER_PACKAGES_FILE = $(DOCSTMPDIR)/httpserver.packages
+
+httpserverdocs: $(HTTPSERVER_INDEX_HTML)
+
+# Set relative location to core api document root
+$(HTTPSERVER_INDEX_HTML): GET2DOCSDIR=$(HTTPSERVER2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(HTTPSERVER_OPTIONS_FILE),$(HTTPSERVER_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(HTTPSERVER_OPTIONS_FILE) @$(HTTPSERVER_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(HTTPSERVER_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-doctitle,$(HTTPSERVER_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(HTTPSERVER_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(HTTPSERVER_HEADER)$(DRAFT_HEADER)); \
+	  $(call OptionPair,-bottom,$(HTTPSERVER_BOTTOM)$(DRAFT_BOTTOM)); \
+	  $(call OptionTrip,-linkoffline,$(HTTPSERVER2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(HTTPSERVER_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(HTTPSERVER_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(HTTPSERVER_PKGS))
+
+#############################################################
+#
+# mgmtdocs
+#
+
+ALL_OTHER_TARGETS += mgmtdocs
+
+MGMT_DOCDIR	 := $(JRE_API_DOCSDIR)/management/extension
+MGMT2COREAPI     := ../../$(JDKJRE2COREAPI)
+JVM_MIB_NAME     := JVM-MANAGEMENT-MIB.mib
+JVM_MIB_SRC      := $(CLOSED_SRC)/share/classes/sun/management/snmp/$(JVM_MIB_NAME)
+MGMT_DOCTITLE    := Monitoring and Management Interface for the Java$(TRADEMARK) Platform
+MGMT_WINDOWTITLE := Monitoring and Management Interface for the Java Platform
+MGMT_HEADER      := <strong>Monitoring and Management Interface for the Java Platform</strong>
+MGMT_BOTTOM      := $(call CommonBottom,$(MGMT_FIRST_COPYRIGHT_YEAR))
+MGMT_OVERVIEW    := $(SHARE_SRC)/classes/com/sun/management/mgmt-overview.html
+# MGMT_PKGS is located in NON_CORE_PKGS.gmk
+
+# The index.html, options, and packages files
+MGMT_INDEX_FILE    = $(MGMT_DOCDIR)/index.html
+MGMT_OPTIONS_FILE  = $(DOCSTMPDIR)/mgmt.options
+MGMT_PACKAGES_FILE = $(DOCSTMPDIR)/mgmt.packages
+
+mgmtdocs: $(MGMT_INDEX_FILE)
+
+# Set relative location to core api document root
+$(MGMT_INDEX_FILE): GET2DOCSDIR=$(MGMT2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE)
+	$(prep-javadoc)
+	@if [ -f $(JVM_MIB_SRC) ] ; then 				\
+	  $(ECHO) "$(CP) $(JVM_MIB_SRC) $(@D)/.."; 			\
+	  $(CP) $(JVM_MIB_SRC) $(@D)/.. ; 				\
+	else 								\
+	  $(ECHO) "WARNING: File $(JVM_MIB_NAME) not available."; 	\
+	fi
+	$(call JavadocSummary,$(MGMT_OPTIONS_FILE),$(MGMT_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(MGMT_OPTIONS_FILE) @$(MGMT_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(MGMT_OPTIONS_FILE): $(MGMT_OVERVIEW)
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-overview,$(MGMT_OVERVIEW))			; \
+	  $(call OptionPair,-doctitle,$(MGMT_DOCTITLE))			; \
+	  $(call OptionPair,-windowtitle,$(MGMT_WINDOWTITLE) $(DRAFT_WINTITLE)); \
+	  $(call OptionPair,-header,$(MGMT_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(MGMT_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(MGMT2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(MGMT_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(MGMT_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(MGMT_PKGS))
+
+#############################################################
+#
+# attachdocs
+#
+
+ALL_OTHER_TARGETS += attachdocs
+
+ATTACH_DOCDIR      := $(JDK_API_DOCSDIR)/attach/spec
+ATTACH2COREAPI     := ../../$(JDKJRE2COREAPI)
+ATTACH_DOCTITLE    := Attach API
+ATTACH_WINDOWTITLE := Attach API
+ATTACH_HEADER      := <strong>Attach API</strong>
+ATTACH_BOTTOM      := $(call CommonBottom,$(ATTACH_FIRST_COPYRIGHT_YEAR))
+# ATTACH_PKGS is located in NON_CORE_PKGS.gmk
+
+ATTACH_INDEX_HTML    = $(ATTACH_DOCDIR)/index.html
+ATTACH_OPTIONS_FILE  = $(DOCSTMPDIR)/attach.options
+ATTACH_PACKAGES_FILE = $(DOCSTMPDIR)/attach.packages
+
+attachdocs: $(ATTACH_INDEX_HTML)
+
+# Set relative location to core api document root
+$(ATTACH_INDEX_HTML): GET2DOCSDIR=$(ATTACH2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(ATTACH_OPTIONS_FILE),$(ATTACH_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(ATTACH_OPTIONS_FILE) @$(ATTACH_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(ATTACH_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-doctitle,$(ATTACH_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(ATTACH_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(ATTACH_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(ATTACH_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(ATTACH2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(ATTACH_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(ATTACH_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(ATTACH_PKGS))
+
+#############################################################
+#
+# jconsoledocs
+#
+
+ALL_OTHER_TARGETS += jconsoledocs
+
+JCONSOLE_DOCDIR      := $(JDK_API_DOCSDIR)/jconsole/spec
+JCONSOLE2COREAPI     := ../../$(JDKJRE2COREAPI)
+JCONSOLE_DOCTITLE    := JConsole API
+JCONSOLE_WINDOWTITLE := JConsole API
+JCONSOLE_HEADER      := <strong>JConsole API</strong>
+JCONSOLE_BOTTOM      := $(call CommonBottom,$(JCONSOLE_FIRST_COPYRIGHT_YEAR))
+# JCONSOLE_PKGS is located in NON_CORE_PKGS.gmk
+
+JCONSOLE_INDEX_HTML    = $(JCONSOLE_DOCDIR)/index.html
+JCONSOLE_OPTIONS_FILE  = $(DOCSTMPDIR)/jconsole.options
+JCONSOLE_PACKAGES_FILE = $(DOCSTMPDIR)/jconsole.packages
+
+jconsoledocs: $(JCONSOLE_INDEX_HTML)
+
+# Set relative location to core api document root
+$(JCONSOLE_INDEX_HTML): GET2DOCSDIR=$(JCONSOLE2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(JCONSOLE_OPTIONS_FILE),$(JCONSOLE_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(JCONSOLE_OPTIONS_FILE) @$(JCONSOLE_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(JCONSOLE_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-doctitle,$(JCONSOLE_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(JCONSOLE_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(JCONSOLE_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(JCONSOLE_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(JCONSOLE2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(JCONSOLE_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JCONSOLE_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(JCONSOLE_PKGS))
+
+#############################################################
+#
+# treeapidocs
+#
+
+# Part of langtools
+ifdef LANGTOOLS_DIST
+  ALL_OTHER_TARGETS += treeapidocs
+endif
+
+TREEAPI_DOCDIR       := $(JDK_API_DOCSDIR)/javac/tree
+TREEAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
+TREEAPI_DOCTITLE     := Compiler Tree API
+TREEAPI_WINDOWTITLE  := Compiler Tree API
+TREEAPI_HEADER       := <strong>Compiler Tree API</strong>
+TREEAPI_BOTTOM       := $(call CommonBottom,$(TREEAPI_FIRST_COPYRIGHT_YEAR))
+TREEAPI_GROUPNAME    := Packages
+TREEAPI_REGEXP       := com.sun.source.*
+# TREEAPI_PKGS is located in NON_CORE_PKGS.gmk
+
+TREEAPI_INDEX_HTML    = $(TREEAPI_DOCDIR)/index.html
+TREEAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/treeapi.options
+TREEAPI_PACKAGES_FILE = $(DOCSTMPDIR)/treeapi.packages
+
+treeapidocs: $(TREEAPI_INDEX_HTML)
+
+# Set relative location to core api document root
+$(TREEAPI_INDEX_HTML): GET2DOCSDIR=$(TREEAPI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(TREEAPI_OPTIONS_FILE),$(TREEAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(TREEAPI_OPTIONS_FILE) @$(TREEAPI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(TREEAPI_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionPair,-doctitle,$(TREEAPI_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(TREEAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(TREEAPI_HEADER)$(DRAFT_HEADER))	; \
+          $(call OptionPair,-tag,$(TAG_JLS)) 				; \
+	  $(call OptionPair,-bottom,$(TREEAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-group,$(TREEAPI_GROUPNAME),$(TREEAPI_REGEXP)); \
+	  $(call OptionTrip,-linkoffline,$(TREEAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(TREEAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TREEAPI_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(TREEAPI_PKGS))
+
+#############################################################
+#
+# sctpdocs
+#
+
+ALL_OTHER_TARGETS += sctpdocs
+
+SCTPAPI_DOCDIR      := $(JRE_API_DOCSDIR)/nio/sctp/spec
+SCTPAPI2COREAPI     := ../../../$(JDKJRE2COREAPI)
+SCTPAPI_DOCTITLE    := SCTP API
+SCTPAPI_WINDOWTITLE := SCTP API
+SCTPAPI_HEADER      := <strong>SCTP API</strong>
+SCTPAPI_BOTTOM      := $(call CommonBottom,$(SCTPAPI_FIRST_COPYRIGHT_YEAR))
+# SCTPAPI_PKGS is located in NON_CORE_PKGS.gmk
+
+SCTPAPI_INDEX_HTML    = $(SCTPAPI_DOCDIR)/index.html
+SCTPAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/sctp.options
+SCTPAPI_PACKAGES_FILE = $(DOCSTMPDIR)/sctp.packages
+
+sctpdocs: $(SCTPAPI_INDEX_HTML)
+
+# Set relative location to core api document root
+$(SCTSCTSCTP: GET2DOCSDIR=$(SCTPAPI2COREAPI)/..
+
+# Run javadoc if the index file is out of date or missing
+$(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE)
+	$(prep-javadoc)
+	$(call JavadocSummary,$(SCTPAPI_OPTIONS_FILE),$(SCTPAPI_PACKAGES_FILE))
+	$(JAVADOC_CMD) $(JAVADOC_VM_MEMORY_FLAGS) -d $(@D) \
+	  @$(SCTPAPI_OPTIONS_FILE) @$(SCTPAPI_PACKAGES_FILE)
+
+# Create file with javadoc options in it
+$(SCTPAPI_OPTIONS_FILE):
+	$(prep-target)
+	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
+	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
+	  $(call OptionPair,-encoding,ascii)				; \
+	  $(call OptionOnly,-nodeprecatedlist)				; \
+	  $(call OptionPair,-doctitle,$(SCTPAPI_DOCTITLE))		; \
+	  $(call OptionPair,-windowtitle,$(SCTPAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
+	  $(call OptionPair,-header,$(SCTPAPI_HEADER)$(DRAFT_HEADER))	; \
+	  $(call OptionPair,-bottom,$(SCTPAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
+	  $(call OptionTrip,-linkoffline,$(SCTPAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
+        ) >> $@
+
+# Create a file with the package names in it
+$(SCTPAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SCTPAPI_PKGS))
+	$(prep-target)
+	$(call PackageFilter,$(SCTPAPI_PKGS))
+
+#############################################################
+#
+# Get a cache of all the directories
+
+$(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
+	$(prep-target)
+	@for cp in $(ALL_EXISTING_SOURCE_DIRS) ; do 	\
+	  $(ECHO) "$(FIND) $${cp} -type f >> $@"; 	\
+	  $(FIND) $${cp} -type f >> $@; 		\
+	done
+
+#############################################################
+#release version of core packages ########
+# Maximize performance and ensure that build number & milestone are set.
+
+rel-coredocs: sanitycheckcoredocs
+	$(MAKE) coredocs
+
+rel-docs: rel-coredocs $(ALL_OTHER_TARGETS)
+#
+# end of production targets
+
+otherdocs: $(ALL_OTHER_TARGETS)
+
+clean:
+	$(RM) -r $(DOCSDIR) $(DOCSTMPDIR)
+
+#############################################################
+# DEBUG TARGET
+# List the values defined in the makefile hierarchy, to make sure everything
+# is set properly, and to help identify values we can use instead of making new ones.
+# (Most of them come from common/shared/Defs.gmk)
+#
+#  Notes:
+#    * BUILD_NUMBER defaults to b00 if not set on command line with BUILD_NUMBER=<value>
+#    * MILESTONE defaults to internal unless set to beta, rc, or fcs on command line
+#
+
+echovalues:
+	@$(ECHO) ""
+	@$(ECHO) --------------Imports---------------------------
+	@$(ECHO) "IMPORT_PACKAGES = $(IMPORT_PACKAGES)"
+	@$(ECHO) "IMPORT_PACKAGE_FILTER = $(IMPORT_PACKAGE_FILTER)"
+	@$(ECHO) --------------Imports---------------------------
+	@$(ECHO) ""
+	@$(ECHO) --------------Shared---------------------------
+	@$(ECHO) BUILD_NUMBER = $(BUILD_NUMBER)
+	@$(ECHO) FULL_VERSION = $(FULL_VERSION)
+	@$(ECHO) JDK_VERSION = $(JDK_VERSION)
+	@$(ECHO) JDK_MAJOR_VERSION = $(JDK_MAJOR_VERSION)
+	@$(ECHO) JDK_MINOR_VERSION = $(JDK_MINOR_VERSION)
+	@$(ECHO) JDK_MICRO_VERSION = $(JDK_MICRO_VERSION)
+	@$(ECHO) JDK_UPDATE_VERSION = $(JDK_UPDATE_VERSION)
+	@$(ECHO) JDK_MKTG_VERSION = $(JDK_MKTG_VERSION)
+	@$(ECHO) JDK_UNDERSCORE_VERSION = $(JDK_UNDERSCORE_VERSION)
+	@$(ECHO) JDK_MKTG_UNDERSCORE_VERSION = $(JDK_MKTG_UNDERSCORE_VERSION)
+	@$(ECHO) MARKETING_NUMBER = $(MARKETING_NUMBER)
+	@$(ECHO) MARKET_NAME = $(MARKET_NAME)
+	@$(ECHO) MILESTONE = $(MILESTONE)
+	@$(ECHO) RELEASE = $(RELEASE)
+	@$(ECHO) USER_RELEASE_SUFFIX = $(USER_RELEASE_SUFFIX)
+	@$(ECHO) --------------Shared---------------------------
+	@$(ECHO) ""
+	@$(ECHO) --------------common/Defs---------------------------
+	@$(ECHO) "RELEASEDOCS_SOURCEPATH"
+	@$(ECHO) "   SHARE_SRC/classes: $(SHARE_SRC)/classes"
+	@$(ECHO) "   PLATFORM_SRC/classes: $(PLATFORM_SRC)/classes"
+	@$(ECHO) "   GENSRCDIR: $(GENSRCDIR)"
+	@$(ECHO) "   SHARE_SRC/doc/stub: $(SHARE_SRC)/doc/stub"
+	@$(ECHO) "   IMPORTSRCDIR: $(IMPORTSRCDIR)"
+	@$(ECHO) --------------common/Defs---------------------------
+	@$(ECHO) ""
+
+#############################################################
+.PHONY: all docs coredocs rel-docs echovalues otherdocs rel-coredocs \
+        sanitycheckcoredocs $(ALL_OTHER_TARGETS)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/docs/NON_CORE_PKGS.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,104 @@
+#
+# Copyright (c) 2002, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# This file contains the package names of all the "non-core" 
+# API published in the Java 2 SDK documentation.  "Non-core" means
+# it includes all published API outside of the JDK API specification.
+#
+# These environment variables are used by javadoc in 
+# make/docs/Makefile and are referenced by the localization
+# team when determining which APIs to extract javadoc
+# comments from.
+
+DOMAPI_PKGS      = com.sun.java.browser.dom   \
+                   org.w3c.dom                \
+                   org.w3c.dom.bootstrap      \
+                   org.w3c.dom.ls             \
+                   org.w3c.dom.ranges         \
+                   org.w3c.dom.traversal      \
+                   org.w3c.dom.html           \
+                   org.w3c.dom.stylesheets    \
+                   org.w3c.dom.css            \
+                   org.w3c.dom.events         \
+                   org.w3c.dom.views
+
+JDI_PKGS         = com.sun.jdi                \
+                   com.sun.jdi.event          \
+                   com.sun.jdi.request        \
+                   com.sun.jdi.connect        \
+                   com.sun.jdi.connect.spi
+
+MGMT_PKGS        = com.sun.management
+
+JAAS_PKGS        = com.sun.security.auth          \
+                   com.sun.security.auth.callback \
+                   com.sun.security.auth.login    \
+                   com.sun.security.auth.module
+
+JGSS_PKGS        = com.sun.security.jgss
+
+OLD_JSSE_PKGS    = com.sun.net.ssl
+
+HTTPSERVER_PKGS  = com.sun.net.httpserver       \
+                   com.sun.net.httpserver.spi 
+
+NIO_PKGS         = com.sun.nio.file
+
+DOCLETAPI_PKGS   = com.sun.javadoc
+
+TAGLETAPI_FILE   = com/sun/tools/doclets/Taglet.java
+
+ATTACH_PKGS      = com.sun.tools.attach         \
+                   com.sun.tools.attach.spi
+
+JCONSOLE_PKGS    = com.sun.tools.jconsole
+
+TREEAPI_PKGS 	 = com.sun.source.tree \
+		   com.sun.source.util
+
+SMARTCARDIO_PKGS = javax.smartcardio
+
+SCTPAPI_PKGS     = com.sun.nio.sctp
+
+ifeq ($(PLATFORM), macosx)
+APPLE_EXT_PKGS   = com.apple.concurrent   \
+                   com.apple.eawt         \
+                   com.apple.eawt.event   \
+                   com.apple.eio
+endif
+
+# non-core packages in rt.jar
+NON_CORE_PKGS    = $(DOMAPI_PKGS) \
+                   $(MGMT_PKGS) \
+                   $(JAAS_PKGS) \
+                   $(JGSS_PKGS) \
+                   $(NIO_PKGS) \
+                   $(OLD_JSSE_PKGS) \
+                   $(HTTPSERVER_PKGS) \
+                   $(SMARTCARDIO_PKGS) \
+                   $(SCTPAPI_PKGS) \
+                   $(APPLE_EXT_PKGS)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/docs/Notes.html	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<title>Doc Process Notes</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+
+<body>
+<h3><a name="REGEXP"></a><br>
+REGEXP</h3>
+<p> REGEXP is a list of wildcard patterns that determines which packages listed 
+  in CORE_PKGS.gmk go into which summary-table on the main API index page. It 
+  was motivated by the need to divide the world into &quot;core packages&quot; 
+  (java.*) and &quot;extension packages&quot; (javax.*). In time, the distinction 
+  went away. The whole table is now called &quot;Platform Packages&quot;--which 
+  eliminated the need for this list of regular expressions. But it lingered on, 
+  accreting all of the packages in the JVM, one by one. I pruned it back to &quot;*&quot;, 
+  so it now covers every package in the Java platform API docs. If some separation 
+  is needed in the future, it can grow back into a colon-separated list, starting 
+  with this, which is in all respects equivalent to &quot;*&quot; at this point 
+  in time:</p>
+<blockquote> 
+  <pre>REGEXP = &quot;java.*:javax.*:org.ietf*:org.omg.</pre>
+</blockquote>
+<h3><a name="releaseTargets"></a><br>
+  Release Targets</h3>
+<p> (Thanks to Kelly O'Hair for this info.)</p>
+<p> The <tt>rel-coredocs</tt> and <tt>rel-docs</tt> targets were added by Eric 
+  Armstrong. <tt>rel-coredocs</tt> assumes the kind of large, 32-bit machine used 
+  in the javapubs group's docs-release process. It specifies memory settings accordingly 
+  to maximize performance.</p>
+<p> The performance settings, like the sanity check, are most important for the 
+  core docs--the platform APIs. Running javadoc on those APIs takes a significant 
+  amount of time and memory. Setting the initial heap size as large as possible 
+  is important to prevent thrashing as the heap grows. Setting the maximum as 
+  large as necessary is also important to keep the job from failing.</p>
+<blockquote>
+  <p> <tt>-J-Xmx512</tt> sets a maximum of 512, which became necessary in 6.0<br>
+    <tt>-J-Xms256</tt> sets starting size to 256 (default is 8)</p>
+</blockquote>
+<p> <tt>rel-coredocs</tt> also includes a sanity check to help ensure that <tt>BUILD_NUMBER</tt> 
+  and <tt>MILESTONE</tt> are specified properly when docs are built outside of 
+  the normal release engineering process, with the intention of releasing them 
+  on the web or in a downloaded docs bundle. (When invoked in release engineering's 
+  control build, the values are always set properly. But when the targets are 
+  run by themselves, they default to b00 and &quot;internal&quot;--which silently 
+  sabotage the result of a build that can take many hours to complete.</p>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,69 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of java
+#
+
+PRODUCT=java
+BUILDDIR=..
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# The order of subdirs here is important
+#
+SUBDIRS += jvm redist verify fdlibm java sun_nio jli main
+
+# Others
+#    Note: java_crw_demo java_hprof_demo are demos but must be delivered built in sdk
+
+SUBDIRS += security util net nio
+
+SUBDIRS_management = management
+SUBDIRS_misc       = npt java_crw_demo java_hprof_demo \
+                     instrument 
+#TODO Check invoke
+#                     logging instrument invoke sql rmi
+
+
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(ARCH_DATA_MODEL), 32)
+    SUBDIRS += jexec
+  endif
+endif # PLATFORM
+
+ifeq ($(PLATFORM), linux)
+  SUBDIRS += jexec
+endif # PLATFORM
+
+ifeq ($(PLATFORM), macosx)
+  SUBDIRS += jobjc
+endif # PLATFORM
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/fdlibm/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,88 @@
+#
+# Copyright (c) 1998, 2002, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	k_standard.c \
+	k_rem_pio2.c \
+	k_cos.c \
+	k_sin.c \
+	k_tan.c \
+	e_acos.c \
+	e_asin.c \
+	e_atan2.c \
+	e_atanh.c \
+	e_cosh.c \
+	e_exp.c \
+	e_fmod.c \
+	e_hypot.c \
+	e_log.c \
+	e_log10.c \
+	e_pow.c \
+	e_rem_pio2.c \
+	e_remainder.c \
+	e_scalb.c \
+	e_sinh.c \
+	e_sqrt.c \
+	w_acos.c \
+	w_asin.c \
+	w_atan2.c \
+	w_atanh.c \
+	w_cosh.c \
+	w_exp.c \
+	w_fmod.c \
+	w_hypot.c \
+	w_log.c \
+	w_log10.c \
+	w_pow.c \
+	w_remainder.c \
+	w_scalb.c \
+	w_sinh.c \
+	w_sqrt.c \
+	s_atan.c \
+	s_cbrt.c \
+	s_ceil.c \
+	s_copysign.c \
+	s_cos.c \
+	s_expm1.c \
+	s_fabs.c \
+	s_finite.c \
+	s_floor.c \
+	s_frexp.c \
+	s_ilogb.c \
+	s_isnan.c \
+	s_ldexp.c \
+	s_lib_version.c \
+	s_log1p.c \
+	s_logb.c \
+	s_matherr.c \
+	s_modf.c \
+	s_nextafter.c \
+	s_rint.c \
+	s_scalbn.c \
+	s_signgam.c \
+	s_significand.c \
+	s_sin.c \
+	s_tan.c \
+	s_tanh.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/fdlibm/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 1998, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for fdlibm
+#
+# Note:
+# The fdlibm libraries are built using special rules in Library.gmk.
+#
+
+BUILDDIR     = ../..
+LIBRARY      = fdlibm
+PRODUCT      = java
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Where is fdlibm in the source tree?
+#
+FDLIBM_SRC = $(SHARE_SRC)/native/java/lang/fdlibm
+
+# Windows: compiler flags
+ifeq ($(PLATFORM),windows)
+  # Turn all optimizations off
+  OPTIMIZATION_LEVEL = NONE
+  FASTDEBUG_OPTIMIZATION_LEVEL = NONE
+  OTHER_CFLAGS =
+  CPPFLAGS_DBG += -DLOGGING
+endif
+
+#
+# Linux: Disable optimization to get correctly reproducible
+# floating-point results.
+#
+ifeq ($(PLATFORM),linux)
+  # Turn all optimizations off
+  OPTIMIZATION_LEVEL = NONE
+  FASTDEBUG_OPTIMIZATION_LEVEL = NONE
+endif
+
+ifeq ($(PLATFORM),macosx)
+  # Turn all optimizations off
+  OPTIMIZATION_LEVEL = NONE
+  FASTDEBUG_OPTIMIZATION_LEVEL = NONE
+endif
+
+#
+# Include path.
+#
+OTHER_INCLUDES = -I$(FDLIBM_SRC)/include
+
+#
+# Things that must be linked in.
+#
+OTHER_LDLIBS =
+
+#
+# Files to compile.
+#
+include FILES_c.gmk
+
+#
+# Rules for the .a file.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Find fdlibm source files.
+#
+vpath %.c
+vpath %.c $(FDLIBM_SRC)/src
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/instrument/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,149 @@
+#
+# Copyright (c) 2003, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Makefile for building the Java Programming Language Instrumentation Services
+# agent, supporting java.lang.instrument
+
+BUILDDIR = ../..
+PACKAGE = sun.instrument
+LIBRARY = instrument
+PRODUCT = sun
+
+# Configure the CFLAGS for this library.  Use static binding so that there
+# are not dependencies on modules not on the search patch when invoked from
+# the Windows system directory (or elsewhere).
+MS_RUNTIME_STATIC=true
+
+FILES_m = mapfile-vers
+
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+
+include $(BUILDDIR)/common/Defs.gmk
+
+# Use the mapfile-vers (See the mapfile located with this Makefile)
+ifdef FILES_m
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+#
+# Files to compile.
+#
+FILES_c = \
+	EncodingSupport.c \
+	EncodingSupport_md.c \
+	FileSystemSupport_md.c \
+	InstrumentationImplNativeMethods.c \
+	InvocationAdapter.c \
+	JarFacade.c \
+	JPLISAgent.c \
+	JPLISAssert.c \
+	JavaExceptions.c \
+	PathCharsValidator.c \
+	Reentrancy.c \
+	Utilities.c
+
+#
+# -jaragent support requires zip and jar manfiest parser to be compiled
+# into the instrument library.
+#
+IO_PLATFORM_SRC = $(PLATFORM_SRC)/native/java/io
+LAUNCHER_SHARE_SRC = $(SHARE_SRC)/bin
+LAUNCHER_PLATFORM_SRC = $(PLATFORM_SRC)/bin
+
+FILES_c += \
+	canonicalize_md.c
+
+FILES_export = \
+	sun/instrument/InstrumentationImpl.java
+
+#
+# This controls the ability to do logging in the library.
+#
+CPPFLAGS_DBG += -DJPLIS_LOGGING
+CPPFLAGS_OPT += -DNO_JPLIS_LOGGING
+
+OTHER_INCLUDES = -I$(SHARE_SRC)/instrument
+OTHER_INCLUDES += -I$(PLATFORM_SRC)/instrument
+OTHER_INCLUDES += -I$(IO_PLATFORM_SRC)
+OTHER_INCLUDES += -I$(LAUNCHER_SHARE_SRC) -I$(LAUNCHER_PLATFORM_SRC)
+
+#
+# Create a dependency on libjli (Java Launcher Infrastructure)
+#
+# On UNIX, this is a relative dependency using $ORIGIN. Unfortunately, to
+# do this reliably on Linux takes a different syntax than Solaris.
+#
+# On Windows, this is done by using the same directory as the executable
+# itself, as with all the Windows libraries.
+#
+ifeq ($(PLATFORM), windows)
+  OTHER_LDLIBS += $(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/static/jli.lib
+  OTHER_LCF += -export:Agent_OnAttach
+  # equivalent of strcasecmp is stricmp on Windows
+  CPPFLAGS_COMMON += -Dstrcasecmp=stricmp
+else
+ifneq (,$(findstring $(PLATFORM), macosx))
+  ifneq ($(ARCH), universal)
+    LDFLAGS += -Wl,-all_load
+  endif
+  LDFLAGS += $(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/static/libjli.a
+  OTHER_LDLIBS += -liconv
+  ifeq ($(SYSTEM_ZLIB), true)
+    OTHER_LDLIBS += -lz
+  endif
+else
+  LDFLAGS += -L $(LIBDIR)/$(LIBARCH)/jli
+  OTHER_LDLIBS += -ljli
+  OTHER_LDLIBS += -ldl 
+  ifeq ($(PLATFORM), solaris)
+    LDFLAGS += -R \$$ORIGIN/jli
+  endif
+  ifeq ($(PLATFORM), linux)
+    LDFLAGS += $(LDFLAG_Z_ORIGIN)
+    LDFLAGS += -Wl,--allow-shlib-undefined
+    LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/jli
+  endif
+endif
+endif
+
+ifeq ($(PLATFORM), macosx)
+  LDFLAGS += -framework Cocoa -framework Security -framework ApplicationServices
+endif
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+# We don't want to link against -ljava
+JAVALIB=
+
+#
+# Add to ambient vpath so we pick up the library files
+#
+vpath %.c $(SHARE_SRC)/instrument $(PLATFORM_SRC)/instrument
+vpath %.c $(IO_PLATFORM_SRC)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/instrument/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright (c) 2003, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Agent_OnLoad;
+	    Agent_OnAttach;
+            Java_sun_instrument_InstrumentationImpl_isModifiableClass0;
+            Java_sun_instrument_InstrumentationImpl_isRetransformClassesSupported0;
+            Java_sun_instrument_InstrumentationImpl_setHasRetransformableTransformers;
+            Java_sun_instrument_InstrumentationImpl_retransformClasses0;
+            Java_sun_instrument_InstrumentationImpl_getAllLoadedClasses0;
+            Java_sun_instrument_InstrumentationImpl_getInitiatedClasses0;
+            Java_sun_instrument_InstrumentationImpl_redefineClasses0;
+            Java_sun_instrument_InstrumentationImpl_getObjectSize0;
+	    Java_sun_instrument_InstrumentationImpl_appendToClassLoaderSearch0;
+	    Java_sun_instrument_InstrumentationImpl_setNativeMethodPrefixes;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/invoke/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,42 @@
+#
+# Copyright (c) 2008, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+
+PACKAGE = java.lang.invoke
+PRODUCT = java
+include $(BUILDDIR)/common/Defs.gmk
+
+AUTO_FILES_JAVA_DIRS = java/lang/invoke sun/invoke
+FILES_java = \
+    java/lang/ClassValue.java \
+    java/lang/BootstrapMethodError.java
+
+# The sources built here use new language syntax to generate
+# method handle calls.  Let's be sure we are using that format.
+LANGUAGE_VERSION = -source 7
+CLASS_VERSION = -target 7
+
+include $(BUILDDIR)/common/Classes.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/Exportedfiles.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,178 @@
+#
+# Copyright (c) 1997, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# These are the names of JAVA classes for which we will make .h files.
+#
+ifneq ($(PLATFORM), windows)
+FILES_export = \
+    java/lang/Object.java \
+    java/lang/Class.java \
+    java/lang/Compiler.java \
+    java/lang/String.java \
+    java/lang/Thread.java \
+    java/lang/ThreadGroup.java \
+    java/lang/StrictMath.java \
+    java/lang/Number.java \
+    java/lang/Byte.java \
+    java/lang/Short.java \
+    java/lang/Integer.java \
+    java/lang/Long.java \
+    java/lang/Float.java \
+    java/lang/Double.java \
+    java/lang/Boolean.java \
+    java/lang/Character.java \
+    java/lang/System.java \
+    java/lang/ClassLoader.java \
+    java/lang/Runtime.java \
+    java/lang/SecurityManager.java \
+    java/lang/Shutdown.java \
+    java/lang/Package.java \
+    java/lang/ref/Finalizer.java \
+    java/lang/reflect/AccessibleObject.java \
+    java/lang/reflect/Field.java \
+    java/lang/reflect/Method.java \
+    java/lang/reflect/Constructor.java \
+    java/lang/reflect/InvocationTargetException.java \
+    java/lang/reflect/Array.java \
+    java/lang/reflect/Proxy.java \
+    java/security/AccessController.java \
+    java/util/Date.java \
+    java/util/TimeZone.java \
+    java/util/ResourceBundle.java \
+    java/util/concurrent/atomic/AtomicLong.java \
+    java/util/prefs/FileSystemPreferences.java \
+    java/io/Console.java \
+    java/io/FileDescriptor.java \
+    java/io/InputStream.java \
+    java/io/FileInputStream.java \
+    java/io/FileOutputStream.java \
+    java/io/PrintStream.java \
+    java/io/RandomAccessFile.java \
+    java/io/DataInputStream.java \
+    java/io/DataOutputStream.java \
+    java/io/File.java \
+    java/io/FileSystem.java \
+    java/io/UnixFileSystem.java \
+    java/io/ObjectInputStream.java \
+    java/io/ObjectOutputStream.java \
+    java/io/ObjectStreamClass.java \
+    java/lang/Throwable.java \
+    java/lang/NoClassDefFoundError.java \
+    java/lang/StringIndexOutOfBoundsException.java \
+    java/lang/OutOfMemoryError.java \
+    sun/misc/Version.java \
+    sun/misc/VM.java \
+    sun/misc/VMSupport.java \
+    sun/misc/Signal.java \
+    sun/misc/MessageUtils.java \
+    sun/misc/NativeSignalHandler.java \
+    sun/misc/GC.java \
+    sun/reflect/ConstantPool.java \
+    sun/reflect/NativeConstructorAccessorImpl.java \
+    sun/reflect/NativeMethodAccessorImpl.java \
+    sun/reflect/Reflection.java
+
+EXPORTED_inner = \
+    java.lang.ClassLoader$$NativeLibrary
+
+else # PLATFORM
+FILES_export = \
+    java/lang/Object.java \
+    java/lang/Class.java \
+    java/lang/Compiler.java \
+    java/lang/String.java \
+    java/lang/Thread.java \
+    java/lang/ThreadGroup.java \
+    java/lang/StrictMath.java \
+    java/lang/Number.java \
+    java/lang/Byte.java \
+    java/lang/Short.java \
+    java/lang/Integer.java \
+    java/lang/Long.java \
+    java/lang/Float.java \
+    java/lang/Double.java \
+    java/lang/Boolean.java \
+    java/lang/System.java \
+    java/lang/Package.java \
+    java/lang/ClassLoader.java \
+    java/lang/Runtime.java \
+    java/lang/SecurityManager.java \
+    java/lang/Shutdown.java \
+    java/lang/reflect/AccessibleObject.java \
+    java/lang/reflect/Field.java \
+    java/lang/reflect/Method.java \
+    java/lang/reflect/Constructor.java \
+    java/lang/reflect/InvocationTargetException.java \
+    java/lang/reflect/Array.java \
+    java/lang/reflect/Proxy.java \
+    java/lang/ref/Reference.java \
+    java/lang/ref/Finalizer.java \
+    java/util/Date.java \
+    java/util/Properties.java \
+    java/util/ResourceBundle.java \
+    java/util/TimeZone.java \
+    java/util/concurrent/atomic/AtomicLong.java \
+    java/util/prefs/WindowsPreferences.java \
+    java/util/prefs/WindowsPreferencesFactory.java \
+    java/util/logging/FileHandler.java \
+    java/io/Console.java \
+    java/io/FileSystem.java \
+    java/io/FileDescriptor.java \
+    java/io/InputStream.java \
+    java/io/FileInputStream.java \
+    java/io/FileOutputStream.java \
+    java/io/PrintStream.java \
+    java/io/RandomAccessFile.java \
+    java/io/DataInputStream.java \
+    java/io/DataOutputStream.java \
+    java/io/File.java \
+    java/io/ObjectOutputStream.java \
+    java/io/ObjectInputStream.java \
+    java/io/ObjectStreamClass.java \
+    java/lang/Throwable.java \
+    java/lang/NoClassDefFoundError.java \
+    java/lang/StringIndexOutOfBoundsException.java \
+    java/lang/OutOfMemoryError.java \
+    java/lang/ProcessImpl.java \
+    sun/misc/Version.java \
+    sun/misc/VM.java \
+    sun/misc/VMSupport.java \
+    sun/misc/GC.java \
+    sun/misc/Signal.java \
+    sun/misc/NativeSignalHandler.java \
+    sun/misc/MessageUtils.java \
+    java/security/AccessController.java \
+    sun/reflect/ConstantPool.java \
+    sun/reflect/NativeConstructorAccessorImpl.java \
+    sun/reflect/NativeMethodAccessorImpl.java \
+    sun/reflect/Reflection.java \
+    sun/security/provider/NativeSeedGenerator.java \
+    sun/io/Win32ErrorMode.java
+
+EXPORTED_inner = \
+    java.lang.ClassLoader$$NativeLibrary
+
+endif # PLATFORM
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,82 @@
+#
+# Copyright (c) 1996, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	AccessController.c \
+	Array.c \
+	String.c \
+	Class.c \
+	ClassLoader.c \
+	Compiler.c \
+	Console_md.c \
+	Double.c \
+	FileSystem_md.c \
+	FileDescriptor_md.c \
+	FileInputStream.c \
+	FileInputStream_md.c \
+	FileOutputStream_md.c \
+	Finalizer.c \
+	Float.c \
+	Object.c \
+	ObjectOutputStream.c \
+	ObjectInputStream.c \
+	ObjectStreamClass.c \
+	Package.c \
+	ProcessEnvironment_md.c \
+	Proxy.c \
+	RandomAccessFile.c \
+	RandomAccessFile_md.c \
+	ResourceBundle.c \
+	Runtime.c \
+	SecurityManager.c \
+	Shutdown.c \
+	StrictMath.c \
+	System.c \
+	Thread.c \
+	Throwable.c \
+	Signal.c \
+	NativeSignalHandler.c \
+	verify_stub.c \
+	io_util.c \
+	io_util_md.c \
+	jio.c \
+	logging.c \
+	jni_util.c \
+	jni_util_md.c \
+	jdk_util.c \
+	jdk_util_md.c \
+	check_version.c \
+	java_props_md.c \
+	DriverManager.c \
+	ConstantPool.c \
+	MessageUtils.c \
+	GC.c \
+	NativeAccessors.c \
+	Reflection.c \
+	Bits.c \
+	AtomicLong.c \
+	Version.c \
+	VM.c \
+	VMSupport.c 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,489 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# This is the list of java classes that will be automatically built
+# from sources.  See Exportedfiles.gmk for the list of files which
+# will generate header files
+#
+JAVA_JAVA_java = \
+    java/lang/Object.java \
+    java/lang/AutoCloseable.java \
+    java/lang/Class.java \
+    java/lang/Thread.java \
+    java/lang/Character.java \
+    java/lang/CharacterData.java \
+    java/lang/CharacterName.java \
+    sun/misc/ASCIICaseInsensitiveComparator.java \
+    sun/misc/VM.java \
+    sun/misc/Signal.java \
+    sun/misc/NativeSignalHandler.java \
+    java/lang/ThreadGroup.java \
+    java/lang/ThreadLocal.java \
+        java/lang/InheritableThreadLocal.java \
+    java/lang/String.java \
+        java/lang/ConditionalSpecialCasing.java \
+        java/lang/StringCoding.java \
+    java/lang/StringBuffer.java \
+    java/lang/StringBuilder.java \
+    java/lang/SuppressWarnings.java \
+    java/lang/AbstractStringBuilder.java \
+    java/lang/ClassLoader.java \
+    java/lang/AssertionStatusDirectives.java \
+    java/lang/Enum.java \
+    java/lang/StrictMath.java \
+    java/lang/Math.java \
+    sun/misc/FloatingDecimal.java \
+    sun/misc/FormattedFloatingDecimal.java \
+    java/lang/Number.java \
+        java/lang/Byte.java \
+        java/lang/Short.java \
+        java/lang/Integer.java \
+        java/lang/Long.java \
+        java/lang/Float.java \
+        java/lang/Double.java \
+    java/lang/Boolean.java \
+    java/lang/Void.java \
+    java/lang/Runnable.java \
+    java/lang/Cloneable.java \
+    java/lang/CharSequence.java \
+    java/lang/SecurityManager.java \
+    java/lang/Runtime.java \
+    java/lang/RuntimePermission.java \
+    java/lang/ApplicationShutdownHooks.java \
+    java/lang/Shutdown.java \
+    java/lang/Terminator.java \
+    java/lang/System.java \
+    java/lang/Compiler.java \
+    java/lang/Throwable.java \
+        java/lang/Exception.java \
+	    java/lang/ReflectiveOperationException.java \
+	    java/lang/IllegalAccessException.java \
+	    java/lang/InstantiationException.java \
+	    java/lang/ClassNotFoundException.java \
+	    java/lang/CloneNotSupportedException.java \
+            java/lang/InterruptedException.java \
+	    java/lang/NoSuchFieldException.java \
+	    java/lang/NoSuchMethodException.java \
+            java/lang/RuntimeException.java \
+                java/lang/ArithmeticException.java \
+	        java/lang/ArrayStoreException.java \
+	        java/lang/ClassCastException.java \
+	        java/lang/IndexOutOfBoundsException.java \
+	            java/lang/ArrayIndexOutOfBoundsException.java \
+	            java/lang/StringIndexOutOfBoundsException.java \
+	        java/lang/NegativeArraySizeException.java \
+	        java/lang/NullPointerException.java \
+                java/lang/IllegalStateException.java \
+                java/lang/IllegalArgumentException.java \
+                    java/lang/NumberFormatException.java \
+                    java/lang/IllegalThreadStateException.java \
+                    java/lang/IllegalMonitorStateException.java \
+                java/lang/SecurityException.java \
+                java/lang/TypeNotPresentException.java \
+                java/lang/EnumConstantNotPresentException.java \
+                java/lang/UnsupportedOperationException.java \
+        java/lang/Error.java \
+            java/lang/AssertionError.java \
+            java/lang/ThreadDeath.java \
+            java/lang/LinkageError.java \
+		java/lang/ClassCircularityError.java \
+		java/lang/ClassFormatError.java \
+		    java/lang/UnsupportedClassVersionError.java \
+		java/lang/ExceptionInInitializerError.java \
+		java/lang/IncompatibleClassChangeError.java \
+		    java/lang/AbstractMethodError.java \
+		    java/lang/IllegalAccessError.java \
+		    java/lang/InstantiationError.java \
+		    java/lang/NoSuchFieldError.java \
+		    java/lang/NoSuchMethodError.java \
+		java/lang/NoClassDefFoundError.java \
+		java/lang/UnsatisfiedLinkError.java \
+		java/lang/VerifyError.java \
+	    java/lang/VirtualMachineError.java \
+		java/lang/InternalError.java \
+		java/lang/OutOfMemoryError.java \
+		java/lang/StackOverflowError.java \
+		java/lang/UnknownError.java \
+    java/lang/StackTraceElement.java \
+    java/lang/Package.java \
+    java/lang/Process.java \
+    java/lang/ProcessBuilder.java \
+    java/lang/ProcessEnvironment.java \
+    java/lang/ProcessImpl.java \
+    java/lang/Appendable.java \
+    java/lang/Comparable.java \
+    java/lang/Readable.java \
+    java/lang/Override.java \
+    java/lang/SafeVarargs.java \
+    java/lang/SuppressWarnings.java \
+    java/lang/ref/Reference.java \
+        java/lang/ref/SoftReference.java \
+	java/lang/ref/WeakReference.java \
+	java/lang/ref/FinalReference.java \
+	java/lang/ref/PhantomReference.java \
+    java/lang/ref/ReferenceQueue.java \
+    java/lang/ref/Finalizer.java \
+    java/util/BitSet.java \
+    java/util/Calendar.java \
+        java/util/GregorianCalendar.java \
+            sun/util/BuddhistCalendar.java \
+        java/util/JapaneseImperialCalendar.java \
+        sun/util/calendar/CalendarDate.java \
+	    sun/util/calendar/ImmutableGregorianDate.java \
+        sun/util/calendar/CalendarSystem.java \
+	sun/util/calendar/Era.java \
+        sun/util/calendar/CalendarUtils.java \
+	sun/util/calendar/AbstractCalendar.java \
+	sun/util/calendar/BaseCalendar.java \
+	    sun/util/calendar/Gregorian.java \
+	    sun/util/calendar/JulianCalendar.java \
+	    sun/util/calendar/LocalGregorianCalendar.java \
+    java/util/Currency.java \
+    java/util/Date.java \
+    java/util/Dictionary.java \
+    java/util/EmptyStackException.java \
+    java/util/Enumeration.java \
+    java/util/EventListener.java \
+	java/util/EventListenerProxy.java \
+    java/util/EventObject.java \
+    java/util/Formatter.java \
+    java/util/Formattable.java \
+    java/util/FormattableFlags.java \
+    java/util/IllegalFormatException.java \
+        java/util/DuplicateFormatFlagsException.java \
+        java/util/FormatFlagsConversionMismatchException.java \
+        java/util/IllegalFormatCodePointException.java \
+        java/util/IllegalFormatConversionException.java \
+        java/util/IllegalFormatFlagsException.java \
+        java/util/IllegalFormatPrecisionException.java \
+        java/util/IllegalFormatWidthException.java \
+        java/util/MissingFormatArgumentException.java \
+        java/util/MissingFormatWidthException.java \
+        java/util/UnknownFormatConversionException.java \
+        java/util/UnknownFormatFlagsException.java \
+    java/util/IllformedLocaleException.java \
+    java/util/FormatterClosedException.java \
+    java/util/ListResourceBundle.java \
+        sun/util/EmptyListResourceBundle.java \
+    java/util/Locale.java \
+        sun/util/locale/BaseLocale.java \
+        sun/util/locale/Extension.java \
+        sun/util/locale/InternalLocaleBuilder.java \
+        sun/util/locale/LanguageTag.java \
+        sun/util/locale/LocaleExtensions.java \
+        sun/util/locale/LocaleObjectCache.java \
+        sun/util/locale/LocaleSyntaxException.java \
+        sun/util/locale/LocaleUtils.java \
+        sun/util/locale/ParseStatus.java \
+        sun/util/locale/StringTokenIterator.java \
+        sun/util/locale/UnicodeLocaleExtension.java \
+    java/util/LocaleISOData.java \
+        sun/util/LocaleServiceProviderPool.java \
+	sun/util/LocaleDataMetaInfo.java \
+    java/util/MissingResourceException.java \
+    java/util/NoSuchElementException.java \
+    java/util/Observable.java \
+    java/util/Observer.java \
+    java/util/Properties.java \
+        java/util/InvalidPropertiesFormatException.java \
+    java/util/PropertyPermission.java \
+    java/util/PropertyResourceBundle.java \
+    java/util/Random.java \
+    java/util/ResourceBundle.java \
+        sun/util/ResourceBundleEnumeration.java \
+        sun/util/CoreResourceBundleControl.java \
+    java/util/Scanner.java \
+    java/util/InputMismatchException.java \
+    java/util/Stack.java \
+    java/util/StringTokenizer.java \
+    java/util/TimeZone.java \
+        java/util/SimpleTimeZone.java \
+        sun/util/TimeZoneNameUtility.java \
+        sun/util/calendar/ZoneInfo.java \
+        sun/util/calendar/ZoneInfoFile.java \
+        sun/util/calendar/TzIDOldMapping.java \
+    java/util/TooManyListenersException.java \
+    java/util/Comparator.java \
+    java/util/Collections.java \
+    java/util/Iterator.java \
+    java/util/ListIterator.java \
+    java/util/Collection.java \
+        java/util/Set.java \
+            java/util/SortedSet.java \
+                java/util/NavigableSet.java \
+        java/util/List.java \
+	java/util/Queue.java \
+	    java/util/Deque.java \
+    java/util/AbstractCollection.java \
+        java/util/AbstractSet.java \
+            java/util/HashSet.java \
+            java/util/LinkedHashSet.java \
+            java/util/TreeSet.java \
+            java/util/EnumSet.java \
+                java/util/RegularEnumSet.java \
+                java/util/JumboEnumSet.java \
+        java/util/AbstractList.java \
+            java/util/ArrayList.java \
+            java/util/Vector.java \
+        java/util/AbstractSequentialList.java \
+                java/util/LinkedList.java \
+	java/util/AbstractQueue.java \
+	    java/util/PriorityQueue.java \
+	java/util/ArrayDeque.java \
+    java/util/Map.java \
+        java/util/SortedMap.java \
+            java/util/NavigableMap.java \
+    java/util/AbstractMap.java \
+        java/util/HashMap.java \
+        java/util/LinkedHashMap.java \
+        java/util/TreeMap.java \
+        java/util/Hashtable.java \
+	java/util/WeakHashMap.java \
+	java/util/IdentityHashMap.java \
+	java/util/EnumMap.java \
+    java/util/Arrays.java \
+    java/util/DualPivotQuicksort.java \
+    java/util/TimSort.java \
+    java/util/ComparableTimSort.java \
+    java/util/ConcurrentModificationException.java \
+    java/util/ServiceLoader.java \
+    java/util/ServiceConfigurationError.java \
+    java/util/Timer.java \
+    java/util/TimerTask.java \
+    java/util/Objects.java \
+    java/util/UUID.java \
+    java/util/concurrent/AbstractExecutorService.java \
+    java/util/concurrent/ArrayBlockingQueue.java \
+    java/util/concurrent/BlockingDeque.java \
+    java/util/concurrent/BlockingQueue.java \
+    java/util/concurrent/BrokenBarrierException.java \
+    java/util/concurrent/Callable.java \
+    java/util/concurrent/CancellationException.java \
+    java/util/concurrent/CompletionService.java \
+    java/util/concurrent/ConcurrentHashMap.java \
+    java/util/concurrent/ConcurrentLinkedDeque.java \
+    java/util/concurrent/ConcurrentLinkedQueue.java \
+    java/util/concurrent/ConcurrentMap.java \
+    java/util/concurrent/ConcurrentNavigableMap.java \
+    java/util/concurrent/ConcurrentSkipListMap.java \
+    java/util/concurrent/ConcurrentSkipListSet.java \
+    java/util/concurrent/CopyOnWriteArrayList.java \
+    java/util/concurrent/CopyOnWriteArraySet.java \
+    java/util/concurrent/CountDownLatch.java \
+    java/util/concurrent/CyclicBarrier.java \
+    java/util/concurrent/DelayQueue.java \
+    java/util/concurrent/Delayed.java \
+    java/util/concurrent/Exchanger.java \
+    java/util/concurrent/ExecutionException.java \
+    java/util/concurrent/Executor.java \
+    java/util/concurrent/ExecutorService.java \
+    java/util/concurrent/ExecutorCompletionService.java \
+    java/util/concurrent/Executors.java \
+    java/util/concurrent/ForkJoinPool.java \
+    java/util/concurrent/ForkJoinTask.java \
+    java/util/concurrent/ForkJoinWorkerThread.java \
+    java/util/concurrent/Future.java \
+    java/util/concurrent/FutureTask.java \
+    java/util/concurrent/LinkedBlockingDeque.java \
+    java/util/concurrent/LinkedBlockingQueue.java \
+    java/util/concurrent/LinkedTransferQueue.java \
+    java/util/concurrent/Phaser.java \
+    java/util/concurrent/PriorityBlockingQueue.java \
+    java/util/concurrent/RecursiveAction.java \
+    java/util/concurrent/RecursiveTask.java \
+    java/util/concurrent/RejectedExecutionException.java \
+    java/util/concurrent/RejectedExecutionHandler.java \
+    java/util/concurrent/RunnableFuture.java \
+    java/util/concurrent/RunnableScheduledFuture.java \
+    java/util/concurrent/ScheduledExecutorService.java \
+    java/util/concurrent/ScheduledFuture.java \
+    java/util/concurrent/ScheduledThreadPoolExecutor.java \
+    java/util/concurrent/Semaphore.java \
+    java/util/concurrent/SynchronousQueue.java \
+    java/util/concurrent/ThreadFactory.java \
+    java/util/concurrent/ThreadLocalRandom.java \
+    java/util/concurrent/ThreadPoolExecutor.java \
+    java/util/concurrent/TimeUnit.java \
+    java/util/concurrent/TimeoutException.java \
+    java/util/concurrent/TransferQueue.java \
+    java/util/concurrent/atomic/AtomicBoolean.java \
+    java/util/concurrent/atomic/AtomicInteger.java \
+    java/util/concurrent/atomic/AtomicIntegerArray.java \
+    java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java \
+    java/util/concurrent/atomic/AtomicLong.java \
+    java/util/concurrent/atomic/AtomicLongArray.java \
+    java/util/concurrent/atomic/AtomicLongFieldUpdater.java \
+    java/util/concurrent/atomic/AtomicMarkableReference.java \
+    java/util/concurrent/atomic/AtomicReference.java \
+    java/util/concurrent/atomic/AtomicReferenceArray.java \
+    java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java \
+    java/util/concurrent/atomic/AtomicStampedReference.java \
+    java/util/concurrent/locks/AbstractOwnableSynchronizer.java \
+    java/util/concurrent/locks/AbstractQueuedLongSynchronizer.java \
+    java/util/concurrent/locks/AbstractQueuedSynchronizer.java \
+    java/util/concurrent/locks/AbstractQueuedLongSynchronizer.java \
+    java/util/concurrent/locks/Condition.java \
+    java/util/concurrent/locks/Lock.java \
+    java/util/concurrent/locks/LockSupport.java \
+    java/util/concurrent/locks/ReadWriteLock.java \
+    java/util/concurrent/locks/ReentrantLock.java \
+    java/util/concurrent/locks/ReentrantReadWriteLock.java \
+    java/util/regex/Pattern.java \
+    java/util/regex/Matcher.java \
+    java/util/regex/MatchResult.java \
+    java/util/regex/ASCII.java \
+    java/util/regex/UnicodeProp.java \
+    java/util/regex/PatternSyntaxException.java \
+    java/util/prefs/Preferences.java \
+        java/util/prefs/AbstractPreferences.java \
+    java/util/prefs/PreferenceChangeEvent.java \
+    java/util/prefs/PreferenceChangeListener.java \
+    java/util/prefs/NodeChangeEvent.java \
+    java/util/prefs/NodeChangeListener.java \
+    java/util/prefs/BackingStoreException.java \
+    java/util/prefs/InvalidPreferencesFormatException.java \
+    java/util/prefs/PreferencesFactory.java \
+    java/util/prefs/Base64.java \
+    java/util/prefs/XmlSupport.java \
+    java/util/spi/CurrencyNameProvider.java \
+    java/util/spi/LocaleNameProvider.java \
+    java/util/spi/LocaleServiceProvider.java \
+    java/util/spi/TimeZoneNameProvider.java \
+    java/io/Closeable.java \
+    java/io/Flushable.java \
+    java/io/PipedInputStream.java \
+    java/io/PipedOutputStream.java \
+    java/io/IOException.java \
+	java/io/CharConversionException.java \
+        java/io/FileNotFoundException.java \
+        java/io/EOFException.java \
+	java/io/SyncFailedException.java \
+        java/io/UTFDataFormatException.java \
+        java/io/InterruptedIOException.java \
+	java/io/UnsupportedEncodingException.java \
+    java/io/DataInput.java \
+    java/io/DataOutput.java \
+    java/io/InputStream.java \
+        java/io/FileInputStream.java \
+        java/io/FilterInputStream.java \
+            java/io/BufferedInputStream.java \
+            java/io/DataInputStream.java \
+        java/io/ByteArrayInputStream.java \
+        java/io/PushbackInputStream.java \
+        java/io/SequenceInputStream.java \
+        java/io/StringBufferInputStream.java \
+        java/io/LineNumberInputStream.java \
+    java/io/OutputStream.java \
+        java/io/FileOutputStream.java \
+        java/io/FilterOutputStream.java \
+            java/io/BufferedOutputStream.java \
+            java/io/DataOutputStream.java \
+        java/io/ByteArrayOutputStream.java \
+        java/io/PrintStream.java \
+    java/io/RandomAccessFile.java \
+    java/io/StreamTokenizer.java \
+    java/io/DeleteOnExitHook.java \
+    java/io/File.java \
+    java/io/FileSystem.java \
+    java/io/FileDescriptor.java \
+    java/io/FilenameFilter.java \
+    java/io/FileFilter.java \
+    java/io/FilePermission.java \
+    java/io/Serializable.java \
+    java/io/Externalizable.java \
+    java/io/SerialCallbackContext.java \
+	java/io/Bits.java \
+	java/io/ObjectInput.java \
+	java/io/ObjectInputStream.java \
+	java/io/ObjectInputValidation.java \
+	java/io/ObjectOutput.java \
+	java/io/ObjectOutputStream.java \
+	java/io/ObjectStreamClass.java \
+	java/io/ObjectStreamConstants.java \
+	java/io/ObjectStreamField.java \
+	java/io/SerializablePermission.java \
+	java/io/InvalidClassException.java \
+	java/io/InvalidObjectException.java \
+	java/io/NotActiveException.java \
+	java/io/NotSerializableException.java \
+	java/io/ObjectStreamException.java \
+	java/io/OptionalDataException.java \
+	java/io/StreamCorruptedException.java \
+	java/io/WriteAbortedException.java \
+    java/io/Reader.java \
+	java/io/BufferedReader.java \
+            java/io/LineNumberReader.java \
+        java/io/CharArrayReader.java \
+        java/io/FilterReader.java \
+            java/io/PushbackReader.java \
+        java/io/InputStreamReader.java \
+            java/io/FileReader.java \
+        java/io/PipedReader.java \
+        java/io/StringReader.java \
+    java/io/Writer.java \
+	java/io/BufferedWriter.java \
+	    java/io/PrintWriter.java \
+        java/io/CharArrayWriter.java \
+	java/io/FilterWriter.java \
+        java/io/OutputStreamWriter.java \
+	    java/io/FileWriter.java \
+        java/io/PipedWriter.java \
+	java/io/StringWriter.java \
+    java/io/Console.java \
+    java/io/ExpiringCache.java \
+    java/nio/charset/Charset.java \
+    java/nio/charset/CharsetDecoder.java \
+    java/nio/charset/CharsetEncoder.java \
+    java/nio/charset/UnmappableCharacterException.java \
+    java/nio/Bits.java \
+    java/nio/DirectByteBuffer.java \
+    java/nio/HeapByteBuffer.java \
+    java/nio/HeapCharBuffer.java \
+    java/security/AccessController.java \
+    java/security/ProtectionDomain.java \
+    java/net/URLClassLoader.java \
+    java/net/URLConnection.java \
+    sun/misc/Launcher.java \
+    sun/misc/MetaIndex.java \
+    sun/misc/URLClassPath.java \
+    sun/misc/Version.java \
+    sun/misc/FileURLMapper.java \
+    sun/misc/MessageUtils.java \
+    sun/misc/GC.java \
+    sun/misc/Service.java \
+    sun/misc/JavaAWTAccess.java \
+    sun/misc/JavaLangAccess.java \
+    sun/misc/JavaIOAccess.java \
+    sun/misc/JavaIOFileDescriptorAccess.java \
+    sun/misc/JavaNioAccess.java \
+    sun/misc/Perf.java \
+    sun/misc/PerfCounter.java \
+    sun/net/www/protocol/jar/Handler.java \
+    sun/net/www/protocol/jar/JarURLConnection.java \
+    sun/net/www/protocol/file/Handler.java \
+    sun/net/www/protocol/file/FileURLConnection.java
+
+FILES_java = $(JAVA_JAVA_java)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,375 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for core Java libraries
+# (java.lang, java.lang.ref, java.lang.reflect, java.io, java.util)
+#
+
+BUILDDIR = ../..
+PACKAGE = java.lang
+LIBRARY = java
+PRODUCT = java
+SUBDIRS_MAKEFLAGS += JAVAC_MAX_WARNINGS=true
+SUBDIRS_MAKEFLAGS += JAVAC_WARNINGS_FATAL=true
+JAVAC_MAX_WARNINGS=true
+include $(BUILDDIR)/common/Defs.gmk
+
+$(info ENTERING java)
+
+# windows compiler flags
+ifeq ($(PLATFORM),windows)
+  OTHER_CFLAGS =
+  # build directly into BINDIR...
+  LIB_LOCATION = $(BINDIR)
+  # Exported functions
+  OTHER_LCF = -export:winFileHandleOpen -export:handleLseek
+endif
+
+OTHER_CFLAGS += -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \
+                -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \
+                -DJDK_MICRO_VERSION='"$(JDK_MICRO_VERSION)"' \
+                -DJDK_BUILD_NUMBER='"$(JDK_BUILD_NUMBER)"' 
+
+ifdef JDK_UPDATE_VERSION
+OTHER_CFLAGS += -DJDK_UPDATE_VERSION='"$(JDK_UPDATE_VERSION)"'
+endif
+
+
+#
+# Files to compile.
+#
+include FILES_c.gmk
+include FILES_java.gmk
+include Exportedfiles.gmk
+
+ifeq ($(PLATFORM),windows)
+FILES_java += 	java/io/Win32FileSystem.java \
+		java/io/WinNTFileSystem.java \
+		java/util/prefs/WindowsPreferences.java \
+                java/util/prefs/WindowsPreferencesFactory.java
+
+FILES_c    +=   ProcessImpl_md.c \
+		Win32FileSystem_md.c \
+		WinNTFileSystem_md.c \
+		canonicalize_md.c \
+		dirent_md.c \
+		TimeZone.c \
+		TimeZone_md.c \
+		WindowsPreferences.c \
+		sun/security/provider/WinCAPISeedGenerator.c \
+		sun/io/Win32ErrorMode.c
+
+else # PLATFORM
+FILES_java += 	java/lang/UNIXProcess.java \
+		java/io/UnixFileSystem.java \
+		java/util/prefs/FileSystemPreferences.java \
+                java/util/prefs/FileSystemPreferencesFactory.java \
+
+FILES_c    +=   UNIXProcess_md.c \
+		UnixFileSystem_md.c \
+		canonicalize_md.c \
+		TimeZone.c \
+		TimeZone_md.c \
+		FileSystemPreferences.c
+
+INIT += $(GENSRCDIR)/java/lang/UNIXProcess.java
+
+endif # PLATFORM
+
+ifeq ($(PLATFORM), macosx)
+FILES_c    +=   java_props_macosx.c
+FILES_java += 	java/util/prefs/MacOSXPreferences.java \
+		java/util/prefs/MacOSXPreferencesFile.java \
+		java/util/prefs/MacOSXPreferencesFactory.java
+
+CFLAGS_$(VARIANT)/java_props_md.o = -Os -x objective-c
+endif
+
+#
+# Make sure first rule does 'all'
+#
+default_rule: all
+
+#
+# Source files to generate before we try to compile anything
+#
+
+CLASSES_INIT = niosrc rbcontrolsrc 
+
+niosrc: ; ($(CD) ../nio; $(MAKE) sources)
+
+rbcontrolsrc: $(GENSRCDIR)/sun/util/CoreResourceBundleControl.java
+
+#
+# Add to the default C file search paths
+#
+vpath %.c $(PLATFORM_SRC)/native/java/lang:$(SHARE_SRC)/native/java/lang
+vpath %.c $(SHARE_SRC)/native/java/lang/ref
+vpath %.c $(SHARE_SRC)/native/java/lang/reflect
+vpath %.c $(SHARE_SRC)/native/java/io
+vpath %.c $(PLATFORM_SRC)/native/java/io
+vpath %.c $(SHARE_SRC)/native/java/nio
+vpath %.c $(SHARE_SRC)/native/java/security
+vpath %.c $(SHARE_SRC)/native/common
+vpath %.c $(SHARE_SRC)/native/sun/misc
+vpath %.c $(SHARE_SRC)/native/sun/reflect
+vpath %.c $(SHARE_SRC)/native/java/sql
+vpath %.c $(SHARE_SRC)/native/java/util
+vpath %.c $(SHARE_SRC)/native/java/util/concurrent/atomic
+vpath %.c $(PLATFORM_SRC)/native/common
+vpath %.c $(PLATFORM_SRC)/native/java/util
+vpath %.c $(PLATFORM_SRC)/native/sun/security/provider
+vpath %.c $(PLATFORM_SRC)/native/sun/io
+
+#
+# Includes the fdlibm header file.
+#
+OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/lang/fdlibm/include
+
+#
+# Also include the io_util.h header file.
+#
+OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/io
+OTHER_INCLUDES += -I$(PLATFORM_SRC)/native/java/io
+
+#
+# Also include the TimeZone_md.h header file.
+#
+OTHER_INCLUDES += -I$(PLATFORM_SRC)/native/java/util
+
+#
+# Is the altzone extern documented in ctime(3C) available?
+#
+ifneq ($(PLATFORM), windows)
+ifneq ($(PLATFORM), macosx)
+HAVE_ALTZONE=true
+endif
+endif
+
+ifeq ($(HAVE_ALTZONE),true)
+OTHER_CPPFLAGS += -DHAVE_ALTZONE
+endif
+
+#
+# System.c needs RELEASE.
+# java_props_md.c needs ARCH on non-Solaris platforms.
+#
+OTHER_CPPFLAGS += $(VERSION_DEFINES)
+
+#
+# Include name of LIBARCH
+#
+OTHER_CPPFLAGS += -DARCHPROPNAME='"$(ARCHPROP)"'
+
+#
+# Is the key in the call nl_langinfo(CODESET) called something other than
+# CODESET?
+#
+ifdef ALT_CODESET_KEY
+OTHER_CPPFLAGS += -DALT_CODESET_KEY=$(ALT_CODESET_KEY)
+endif
+
+#
+# Install .lib file.
+#
+INSTALL_DOT_LIB = true
+
+#
+# What to link?
+# On Windows, shell32 is not normally required and so it is delay loaded.
+#
+ifeq ($(PLATFORM),windows)
+OTHER_LDLIBS += $(JVMLIB) -libpath:$(OBJDIR)/../../../fdlibm/$(OBJDIRNAME) fdlibm.lib \
+		       -libpath:$(OBJDIR)/../../../verify/$(OBJDIRNAME) verify.lib \
+		       shell32.lib delayimp.lib /DELAYLOAD:shell32.dll
+else
+OTHER_LDLIBS += $(JVMLIB) -lverify $(LIBSOCKET) $(LIBNSL) $(LIBSCF) $(LIBDL) \
+		-L$(OBJDIR)/../../../fdlibm/$(OBJDIRNAME) -lfdlibm.$(ARCH)
+ifeq ($(PLATFORM), macosx)
+OTHER_LDLIBS += \
+        -framework CoreFoundation \
+        -framework Security \
+        -framework SystemConfiguration
+endif
+endif
+
+#
+# Rules.
+#
+ifeq ($(PLATFORM), solaris)
+  ifneq ($(ARCH), amd64)
+    FILES_reorder += reorder-$(ARCH)
+  endif
+endif
+
+SUBDIRS = reflect
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build:
+	$(SUBDIRS-loop)
+clean clobber::
+	$(SUBDIRS-loop)
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+ifeq ($(PLATFORM), solaris)
+  ifeq ($(CC_VER), 5.8)
+    ifndef REMOVE_ALL_WORKAROUNDS
+      CFLAGS_OPT/ObjectInputStream.o = -xO3 \
+	  $(warning  "WARNING: Using workaround for SS11 bug 6346242, on $@")
+    endif
+  endif
+endif
+
+ifneq ($(PLATFORM),windows)
+
+# UNIXProcess.java is different for solaris and linux. We need to copy
+# the correct UNIXProcess.java over to $(GENSRCDIR)/java/lang/.
+
+ifeq ($(PLATFORM), macosx)
+PLATFORM_UNIX_PROCESS = \
+    $(PLATFORM_SRC)/classes/java/lang/UNIXProcess.java.bsd
+else
+PLATFORM_UNIX_PROCESS = \
+    $(PLATFORM_SRC)/classes/java/lang/UNIXProcess.java.$(PLATFORM)
+endif
+
+$(GENSRCDIR)/java/lang/UNIXProcess.java: $(PLATFORM_UNIX_PROCESS)
+	$(install-file)
+
+clean:: 
+	$(RM) $(GENSRCDIR)/java/lang/UNIXProcess.java
+
+endif
+
+
+#
+# Because we can't link against ourselves!
+#
+JAVALIB =
+
+#
+# Special rules.
+#
+clean:: 
+	$(RM) -r $(CLASSHDRDIR)
+
+clobber:: 
+	$(RM) -r $(CLASSBINDIR)/java/io $(CLASSBINDIR)/java/lang \
+		$(CLASSBINDIR)/java/security $(CLASSBINDIR)/java/util \
+		$(CLASSBINDIR)/sun/misc
+
+#
+# Additional rule from sun/net/GNUmakefile to copy content-type.properties
+# file so that the MimeTable class won't complain while bootstrapping...
+#
+PROPS = content-types.properties
+
+#
+# Rule to copy calendars.properties file.
+#
+CAL_PROPS = calendars.properties
+
+#
+# Rule to copy tzmappings file on Windows
+#
+ifeq ($(PLATFORM), windows)
+TZMAP = $(LIBDIR)/tzmappings
+TZMAPFILE = $(PLATFORM_SRC)/lib/tzmappings
+
+$(TZMAP): $(TZMAPFILE)
+	$(install-file)
+	$(call chmod-file, 444)
+endif
+
+build: $(LIBDIR)/$(PROPS) $(LIBDIR)/$(CAL_PROPS) $(TZMAP)
+
+$(LIBDIR)/$(PROPS): $(PLATFORM_SRC)/lib/$(PROPS)
+	$(install-file)
+
+$(LIBDIR)/$(CAL_PROPS): $(SHARE_SRC)/lib/$(CAL_PROPS)
+	$(install-file)
+
+clean:: 
+	$(RM) -r $(LIBDIR)/$(PROPS) $(TZMAP)
+
+#
+# Rules to create lib/currency.data
+#
+
+CURDATA = $(LIBDIR)/currency.data
+
+build: $(CURDATA)
+
+$(CURDATA): \
+  $(BUILD_TOOLS) \
+  $(SHARE_SRC)/classes/java/util/CurrencyData.properties
+	$(RM) $(CURDATA)
+	$(TOOL_GENERATECURRENCYDATA) -o $@.temp \
+		< $(SHARE_SRC)/classes/java/util/CurrencyData.properties
+	$(MV) $@.temp $@
+	$(call chmod-file, 444)
+
+clean:: 
+	$(RM) $(CURDATA)
+
+
+#
+# Rules to generate classes/java/lang/uniName.dat
+#
+
+
+
+UNINAME = $(CLASSBINDIR)/java/lang/uniName.dat
+
+build: $(UNINAME)
+$(UNINAME): $(JDK_TOPDIR)/make/tools/UnicodeData/UnicodeData.txt \
+	$(BUILD_TOOLS)
+	@$(prep-target)
+	$(TOOL_CHARACTERNAME) \
+		 $(JDK_TOPDIR)/make/tools/UnicodeData/UnicodeData.txt $(UNINAME)
+
+clean:: 
+	$(RM) $(UNINAME)
+
+#
+# End of rules to create $(GENSRCDIR)/java/lang/CharacterDataXX.java
+#
+
+#
+# Rule to precompile CoreResourceBundleControl.java 
+#
+LOCALES_GEN_SH = localelist.sh
+
+$(GENSRCDIR)/sun/util/CoreResourceBundleControl.java: \
+	$(SHARE_SRC)/classes/sun/util/CoreResourceBundleControl-XLocales.java.template $(LOCALES_GEN_SH)
+	@$(prep-target) 
+	NAWK="$(NAWK)" SED="$(SED)" $(SH) $(LOCALES_GEN_SH) "$(JRE_NONEXIST_LOCALES)" \
+		$< $@ 
+clean::
+	$(RM) $(GENSRCDIR)/sun/util/CoreResourceBundleControl.java
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/localelist.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,109 @@
+#!/bin/sh
+
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# This script is to generate the supported locale list string and replace the
+# #LOCALE_LIST# in <ws>/src/share/classes/sun/util/CoreResourceBundleControl.java.
+#
+# NAWK & SED is passed in as environment variables.
+#
+LOCALE_LIST=$1
+INUT_FILE=$2
+OUTPUT_FILE=$3
+
+LOCALES=`(for I in $LOCALE_LIST; do echo $I;done) | sort | uniq`
+JAVA_LOCALES=
+
+toJavaLocale()
+{
+    NewLocale=`echo $1 | $NAWK '
+		BEGIN {
+		    # The following values have to be consistent with java.util.Locale.
+		    javalocales["en"] = "ENGLISH";
+		    javalocales["fr"] = "FRENCH";
+		    javalocales["de"] = "GERMAN";
+		    javalocales["it"] = "ITALIAN";
+		    javalocales["ja"] = "JAPANESE";
+		    javalocales["ko"] = "KOREAN";
+		    javalocales["zh"] = "CHINESE";
+		    javalocales["zh_CN"] = "SIMPLIFIED_CHINESE";
+		    javalocales["zh_TW"] = "TRADITIONAL_CHINESE";
+		    javalocales["fr_FR"] = "FRANCE";
+		    javalocales["de_DE"] = "GERMANY";
+		    javalocales["it_IT"] = "ITALY";
+		    javalocales["ja_JP"] = "JAPAN";
+		    javalocales["ko_KR"] = "KOREA";
+		    javalocales["en_GB"] = "UK";
+		    javalocales["en_US"] = "US";
+		    javalocales["en_CA"] = "CANADA";
+		    javalocales["fr_CA"] = "CANADA_FRENCH";
+		}
+		{
+		    if ($0 in javalocales) {
+			print "	Locale." javalocales[$0];
+		    } else {
+			split($0, a, "_");
+			if (a[3] != "") {
+			    print " new Locale(\"" a[1] "\", \"" a[2] "\", \"" a[3] "\")";
+			} else if (a[2] != "") {
+			    print " new Locale(\"" a[1] "\", \"" a[2] "\")";
+			} else {
+			    print " new Locale(\"" a[1] "\")";
+			}
+		    }
+		}'`
+
+    JAVA_LOCALES=$JAVA_LOCALES$NewLocale
+}
+
+# count the number of locales
+counter=0
+for i in $LOCALES
+do
+    counter=`expr $counter + 1`
+done
+
+index=0
+for locale in $LOCALES
+do
+    index=`expr $index + 1`;
+    if [ $index != $counter ]
+    then
+	toJavaLocale $locale
+	JAVA_LOCALES=$JAVA_LOCALES","
+    else
+	toJavaLocale $locale
+    fi
+done
+
+# replace the #LOCALE_LIST# in the precompiled CoreResourceBundleControl.java file.
+
+$SED -e "s@^#warn .*@// -- This file was mechanically generated: Do not edit! -- //@" \
+    -e  "s/#LOCALE_LIST#/$JAVA_LOCALES/g" $2 > $3
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,300 @@
+#
+# Copyright (c) 1997, 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+		JNU_ThrowNoSuchMethodException;
+		JNU_CallStaticMethodByName;
+		JNU_CallMethodByName;
+		JNU_CallMethodByNameV;
+		JNU_ClassClass;
+		JNU_ClassObject;
+		JNU_ClassString;
+		JNU_ClassThrowable;
+		JNU_CopyObjectArray;
+		JNU_Equals;
+		JNU_GetEnv;
+		JNU_GetFieldByName;
+		JNU_GetStaticFieldByName;
+		JNU_GetStringPlatformChars;
+		JNU_IsInstanceOfByName;
+		JNU_MonitorWait;
+		JNU_NewObjectByName;
+		JNU_NewStringPlatform;
+		JNU_Notify;
+		JNU_NotifyAll;
+		JNU_PrintClass;
+		JNU_PrintString;
+		JNU_ReleaseStringPlatformChars;
+		JNU_SetFieldByName;
+		JNU_SetStaticFieldByName;
+		JNU_ThrowArrayIndexOutOfBoundsException;
+		JNU_ThrowByName;
+		JNU_ThrowByNameWithLastError;
+		JNU_ThrowClassNotFoundException;
+		JNU_ThrowIllegalAccessError;
+		JNU_ThrowIllegalAccessException;
+		JNU_ThrowIllegalArgumentException;
+		JNU_ThrowInstantiationException;
+		JNU_ThrowInternalError;
+		JNU_ThrowIOException;
+		JNU_ThrowIOExceptionWithLastError;
+		JNU_ThrowNoSuchFieldError;
+		JNU_ThrowNoSuchFieldException;
+		JNU_ThrowNoSuchMethodError;
+		JNU_ThrowNullPointerException;
+		JNU_ThrowNumberFormatException;
+		JNU_ThrowOutOfMemoryError;
+		JNU_ThrowStringIndexOutOfBoundsException;
+		JNU_ToString;
+
+		Java_java_io_FileDescriptor_initIDs;
+		Java_java_io_FileDescriptor_sync;
+		Java_java_io_FileInputStream_available;
+		Java_java_io_FileInputStream_close0;
+		Java_java_io_FileInputStream_initIDs;
+		Java_java_io_FileInputStream_open;
+		Java_java_io_FileInputStream_read;
+		Java_java_io_FileInputStream_readBytes;
+		Java_java_io_FileInputStream_skip;
+		Java_java_io_FileOutputStream_close0;
+		Java_java_io_FileOutputStream_initIDs;
+		Java_java_io_FileOutputStream_open;
+		Java_java_io_FileOutputStream_write;
+		Java_java_io_FileOutputStream_writeBytes;
+		Java_java_io_FileSystem_getFileSystem;
+		Java_java_io_ObjectInputStream_bytesToDoubles;
+		Java_java_io_ObjectInputStream_bytesToFloats;
+		Java_java_io_ObjectOutputStream_doublesToBytes;
+		Java_java_io_ObjectOutputStream_floatsToBytes;
+		Java_java_io_ObjectStreamClass_hasStaticInitializer;
+		Java_java_io_ObjectStreamClass_initNative;
+		Java_java_io_RandomAccessFile_close0;
+		Java_java_io_RandomAccessFile_getFilePointer;
+		Java_java_io_RandomAccessFile_initIDs;
+		Java_java_io_RandomAccessFile_length;
+		Java_java_io_RandomAccessFile_open;
+		Java_java_io_RandomAccessFile_read;
+		Java_java_io_RandomAccessFile_readBytes;
+		Java_java_io_RandomAccessFile_seek;
+		Java_java_io_RandomAccessFile_setLength;
+		Java_java_io_RandomAccessFile_write;
+		Java_java_io_RandomAccessFile_writeBytes;
+		Java_java_io_UnixFileSystem_canonicalize0;
+		Java_java_io_UnixFileSystem_checkAccess;
+		Java_java_io_UnixFileSystem_createDirectory;
+		Java_java_io_UnixFileSystem_createFileExclusively;
+		Java_java_io_UnixFileSystem_delete0;
+		Java_java_io_UnixFileSystem_getBooleanAttributes0;
+		Java_java_io_UnixFileSystem_getLastModifiedTime;
+		Java_java_io_UnixFileSystem_getLength;
+		Java_java_io_UnixFileSystem_getSpace;
+		Java_java_io_UnixFileSystem_initIDs;
+		Java_java_io_UnixFileSystem_list;
+		Java_java_io_UnixFileSystem_rename0;
+		Java_java_io_UnixFileSystem_setLastModifiedTime;
+		Java_java_io_UnixFileSystem_setReadOnly;
+		Java_java_io_UnixFileSystem_setPermission;
+		Java_java_lang_Class_forName0;
+		Java_java_lang_Class_getPrimitiveClass;
+		Java_java_lang_Class_isAssignableFrom;
+		Java_java_lang_Class_isInstance;
+		Java_java_lang_Class_registerNatives;
+		Java_java_lang_ClassLoader_findBootstrapClass;
+		Java_java_lang_ClassLoader_defineClass0;
+		Java_java_lang_ClassLoader_defineClass1;
+		Java_java_lang_ClassLoader_defineClass2;
+		Java_java_lang_ClassLoader_findLoadedClass0;
+		Java_java_lang_ClassLoader_resolveClass0;
+		Java_java_lang_ClassLoader_00024NativeLibrary_find;
+		Java_java_lang_ClassLoader_00024NativeLibrary_load;
+		Java_java_lang_ClassLoader_00024NativeLibrary_unload;
+		Java_java_lang_ClassLoader_getCaller; 
+		Java_java_lang_ClassLoader_registerNatives;
+		Java_java_lang_Compiler_registerNatives;
+		Java_java_lang_Double_longBitsToDouble;
+		Java_java_lang_Double_doubleToRawLongBits;
+		Java_java_lang_reflect_Proxy_defineClass0;
+		Java_java_lang_Shutdown_runAllFinalizers;
+		Java_java_lang_ref_Finalizer_invokeFinalizeMethod;
+		Java_java_lang_Float_intBitsToFloat;
+		Java_java_lang_Float_floatToRawIntBits;
+		Java_java_lang_StrictMath_IEEEremainder;
+		Java_java_lang_StrictMath_acos;
+		Java_java_lang_StrictMath_asin;
+		Java_java_lang_StrictMath_atan;
+		Java_java_lang_StrictMath_atan2;
+		Java_java_lang_StrictMath_cos;
+		Java_java_lang_StrictMath_exp;
+		Java_java_lang_StrictMath_log;
+		Java_java_lang_StrictMath_log10;
+		Java_java_lang_StrictMath_pow;
+		Java_java_lang_StrictMath_sin;
+		Java_java_lang_StrictMath_sqrt;
+		Java_java_lang_StrictMath_cbrt;
+		Java_java_lang_StrictMath_tan;
+		Java_java_lang_StrictMath_cosh;
+		Java_java_lang_StrictMath_sinh;
+		Java_java_lang_StrictMath_tanh;
+		Java_java_lang_StrictMath_hypot;
+		Java_java_lang_StrictMath_log1p;
+		Java_java_lang_StrictMath_expm1;
+		Java_java_lang_Object_getClass;
+		Java_java_lang_Object_registerNatives;
+		Java_java_lang_Package_getSystemPackage0;
+		Java_java_lang_Package_getSystemPackages0;
+		Java_java_lang_ProcessEnvironment_environ;
+		Java_java_lang_reflect_Array_get;
+		Java_java_lang_reflect_Array_getBoolean;
+		Java_java_lang_reflect_Array_getByte;
+		Java_java_lang_reflect_Array_getChar;
+		Java_java_lang_reflect_Array_getDouble;
+		Java_java_lang_reflect_Array_getFloat;
+		Java_java_lang_reflect_Array_getInt;
+		Java_java_lang_reflect_Array_getLength;
+		Java_java_lang_reflect_Array_getLong;
+		Java_java_lang_reflect_Array_getShort;
+		Java_java_lang_reflect_Array_multiNewArray;
+		Java_java_lang_reflect_Array_newArray;
+		Java_java_lang_reflect_Array_set;
+		Java_java_lang_reflect_Array_setBoolean;
+		Java_java_lang_reflect_Array_setByte;
+		Java_java_lang_reflect_Array_setChar;
+		Java_java_lang_reflect_Array_setDouble;
+		Java_java_lang_reflect_Array_setFloat;
+		Java_java_lang_reflect_Array_setInt;
+		Java_java_lang_reflect_Array_setLong;
+		Java_java_lang_reflect_Array_setShort;
+		Java_java_lang_Runtime_freeMemory;
+                Java_java_lang_Runtime_maxMemory;
+		Java_java_lang_Runtime_gc;
+		Java_java_lang_Runtime_runFinalization0;
+		Java_java_lang_Runtime_totalMemory;
+		Java_java_lang_Runtime_traceInstructions;
+		Java_java_lang_Runtime_traceMethodCalls;
+                Java_java_lang_Runtime_availableProcessors;
+		Java_java_lang_SecurityManager_classDepth;
+		Java_java_lang_SecurityManager_classLoaderDepth0;
+		Java_java_lang_SecurityManager_currentClassLoader0;
+		Java_java_lang_SecurityManager_currentLoadedClass0;
+		Java_java_lang_SecurityManager_getClassContext;
+		Java_java_lang_Shutdown_halt0;
+		Java_java_lang_String_intern;
+		Java_java_lang_System_identityHashCode;
+		Java_java_lang_System_initProperties;
+		Java_java_lang_System_mapLibraryName;
+		Java_java_lang_System_registerNatives;
+		Java_java_lang_System_setErr0;
+		Java_java_lang_System_setIn0;
+		Java_java_lang_System_setOut0;
+		Java_java_lang_Thread_registerNatives;
+		Java_java_lang_Throwable_fillInStackTrace;
+                Java_java_lang_Throwable_getStackTraceDepth;
+                Java_java_lang_Throwable_getStackTraceElement;
+		Java_java_lang_UNIXProcess_initIDs;
+		Java_java_lang_UNIXProcess_waitForProcessExit;
+		Java_java_lang_UNIXProcess_forkAndExec;
+		Java_java_lang_UNIXProcess_destroyProcess;
+                Java_java_nio_Bits_copyFromShortArray;
+                Java_java_nio_Bits_copyToShortArray;
+                Java_java_nio_Bits_copyFromIntArray;
+                Java_java_nio_Bits_copyToIntArray;
+                Java_java_nio_Bits_copyFromLongArray;
+                Java_java_nio_Bits_copyToLongArray;
+		Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2;
+		Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2;
+		Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2;
+		Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2Ljava_security_AccessControlContext_2;
+		Java_java_security_AccessController_getStackAccessControlContext;
+		Java_java_security_AccessController_getInheritedAccessControlContext;
+		Java_java_sql_DriverManager_getCallerClassLoader;
+		Java_java_util_ResourceBundle_getClassContext;
+		Java_java_util_TimeZone_getSystemTimeZoneID;
+		Java_java_util_TimeZone_getSystemGMTOffsetID;
+		Java_java_util_concurrent_atomic_AtomicLong_VMSupportsCS8;
+		Java_java_util_prefs_FileSystemPreferences_chmod;
+		Java_java_util_prefs_FileSystemPreferences_lockFile0;
+		Java_java_util_prefs_FileSystemPreferences_unlockFile0;
+		Java_java_util_logging_FileHandler_isSetUID;
+		Java_sun_misc_MessageUtils_toStderr;
+		Java_sun_misc_MessageUtils_toStdout;
+		Java_sun_misc_NativeSignalHandler_handle0;
+		Java_sun_misc_Signal_findSignal;
+		Java_sun_misc_Signal_handle0;
+		Java_sun_misc_Signal_raise0;
+              Java_sun_reflect_ConstantPool_getClassAt0;
+              Java_sun_reflect_ConstantPool_getClassAtIfLoaded0;
+              Java_sun_reflect_ConstantPool_getDoubleAt0;
+              Java_sun_reflect_ConstantPool_getFieldAt0;
+              Java_sun_reflect_ConstantPool_getFieldAtIfLoaded0;
+              Java_sun_reflect_ConstantPool_getFloatAt0;
+              Java_sun_reflect_ConstantPool_getIntAt0;
+              Java_sun_reflect_ConstantPool_getLongAt0;
+              Java_sun_reflect_ConstantPool_getMemberRefInfoAt0;
+              Java_sun_reflect_ConstantPool_getMethodAt0;
+              Java_sun_reflect_ConstantPool_getMethodAtIfLoaded0;
+              Java_sun_reflect_ConstantPool_getSize0;
+              Java_sun_reflect_ConstantPool_getStringAt0;
+              Java_sun_reflect_ConstantPool_getUTF8At0;
+		Java_java_io_Console_istty;
+		Java_java_io_Console_encoding;
+                Java_java_io_Console_echo;
+		Java_sun_misc_GC_maxObjectInspectionAge;
+		Java_sun_reflect_NativeConstructorAccessorImpl_newInstance0;
+		Java_sun_reflect_NativeMethodAccessorImpl_invoke0;
+		Java_sun_reflect_Reflection_getCallerClass;
+		Java_sun_reflect_Reflection_getClassAccessFlags;
+                Java_sun_misc_Version_getJdkVersionInfo;
+                Java_sun_misc_Version_getJdkSpecialVersion;
+                Java_sun_misc_Version_getJvmVersionInfo;
+                Java_sun_misc_Version_getJvmSpecialVersion;
+                Java_sun_misc_VM_getThreadStateValues;
+		Java_sun_misc_VM_latestUserDefinedLoader;
+                Java_sun_misc_VM_initialize;
+		Java_sun_misc_VMSupport_initAgentProperties;
+
+                # ZipFile.c needs this one
+		throwFileNotFoundException;
+
+#		Java_sun_misc_VM_getState;			threads.c
+#		Java_sun_misc_VM_threadsSuspended;		threads.c
+#		Java_sun_misc_VM_unsuspendSomeThreads;		threads.c
+#		Java_sun_misc_VM_unsuspendThreads;		threads.c
+
+	# Outcalls from libjvm done using dlsym().
+
+		VerifyClassCodes;
+		VerifyClassCodesForMajorVersion;
+		NewStringPlatform;
+		GetStringPlatformChars;
+		Canonicalize;
+		JDK_GetVersionInfo0;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/reflect/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,61 @@
+#
+# Copyright (c) 2003, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for reflection and annotations
+#
+
+BUILDDIR = ../../..
+PACKAGE = java.lang.reflect
+PRODUCT = java
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files to compile.
+#
+AUTO_FILES_JAVA_DIRS = java/lang/reflect sun/reflect
+
+#
+# Install .lib file.
+#
+INSTALL_DOT_LIB = true
+
+include $(BUILDDIR)/common/Classes.gmk
+
+#
+# Special rules.
+#
+
+subdirs: classes
+
+clean:: 
+	$(RM) -r $(CLASSHDRDIR)
+
+clobber:: 
+	$(RM) -r $(CLASSBINDIR)/java/lang/reflect  \
+		$(CLASSBINDIR)/java/lang/annotatation
+
+.PHONY: clean clobber
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,109 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%_init;
+text: .text%init64IO: OUTPUTDIR/tmp/java/java.lang/java/obj/UnixFileSystem_md.o;
+text: .text%JNI_OnLoad;
+text: .text%Canonicalize;
+text: .text%canonicalize;
+text: .text%collapse: OUTPUTDIR/tmp/java/java.lang/java/obj/canonicalize_md.o;
+text: .text%Java_java_lang_Object_registerNatives;
+text: .text%Java_java_lang_System_registerNatives;
+text: .text%Java_java_lang_Thread_registerNatives;
+text: .text%Java_java_security_AccessController_getStackAccessControlContext;
+text: .text%Java_java_security_AccessController_getInheritedAccessControlContext;
+text: .text%Java_java_lang_ClassLoader_registerNatives;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2;
+text: .text%Java_java_lang_Class_registerNatives;
+text: .text%Java_java_lang_Class_getPrimitiveClass;
+text: .text%Java_java_lang_System_initProperties;
+text: .text%GetJavaProperties;
+text: .text%uname: OUTPUTDIR/tmp/java/java.lang/java/obj/java_props_md.o;
+text: .text%mapLookup: OUTPUTDIR/tmp/java/java.lang/java/obj/java_props_md.o;
+text: .text%setPathEnvironment: OUTPUTDIR/tmp/java/java.lang/java/obj/java_props_md.o;
+text: .text%JNU_NewStringPlatform;
+text: .text%JNU_CallStaticMethodByName;
+text: .text%NewStringPlatform;
+text: .text%Java_java_io_FileInputStream_initIDs;
+text: .text%Java_java_io_FileDescriptor_initIDs;
+text: .text%Java_java_io_FileOutputStream_initIDs;
+text: .text%Java_java_lang_System_setIn0;
+text: .text%Java_sun_reflect_Reflection_getCallerClass;
+text: .text%Java_java_lang_Class_forName0;
+text: .text%Java_java_lang_String_intern;
+text: .text%Java_sun_reflect_NativeConstructorAccessorImpl_newInstance0;
+text: .text%Java_java_lang_Throwable_fillInStackTrace;
+text: .text%Java_java_lang_System_setOut0;
+text: .text%Java_java_lang_System_setErr0;
+text: .text%Java_java_lang_Compiler_registerNatives;
+text: .text%Java_java_io_FileSystem_getFileSystem;
+text: .text%JNU_NewObjectByName;
+text: .text%Java_java_io_UnixFileSystem_initIDs;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2;
+text: .text%Java_java_io_UnixFileSystem_list;
+text: .text%JNU_GetStringPlatformChars;
+text: .text%JNU_ReleaseStringPlatformChars;
+text: .text%JNU_ClassString;
+text: .text%JNU_CopyObjectArray;
+text: .text%Java_java_io_UnixFileSystem_canonicalize;
+text: .text%Java_java_io_UnixFileSystem_getBooleanAttributes0;
+text: .text%Java_java_lang_ClassLoader_findLoadedClass;
+text: .text%Java_java_lang_ClassLoader_findBootstrapClass;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2Ljava_security_AccessControlContext_2;
+text: .text%Java_java_lang_System_mapLibraryName;
+text: .text%cpchars: OUTPUTDIR/tmp/java/java.lang/java/obj/System.o;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_load;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_find;
+text: .text%Java_java_lang_Float_floatToIntBits;
+text: .text%Java_java_lang_Double_doubleToLongBits;
+text: .text%Java_java_io_FileInputStream_open;
+text: .text%fileOpen;
+text: .text%Java_java_io_UnixFileSystem_getLength;
+text: .text%Java_java_io_FileInputStream_readBytes;
+text: .text%readBytes;
+text: .text%Java_java_io_FileInputStream_close0;
+text: .text%Java_java_lang_Object_getClass;
+text: .text%Java_java_lang_ClassLoader_defineClass0;
+text: .text%VerifyClassCodes;
+# Test Exit
+text: .text%Java_java_lang_Shutdown_halt;
+# Test Hello
+text: .text%Java_java_io_FileOutputStream_writeBytes;
+text: .text%writeBytes;
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+text: .text%Java_java_util_ResourceBundle_getClassContext;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2;
+text: .text%JNU_GetEnv;
+text: .text%Java_java_io_UnixFileSystem_checkAccess;
+text: .text%Java_sun_reflect_NativeMethodAccessorImpl_invoke0;
+text: .text%Java_java_lang_ref_Finalizer_invokeFinalizeMethod;
+text: .text%Java_java_io_FileInputStream_available;
+text: .text%Java_java_lang_reflect_Array_newArray;
+text: .text%Java_java_lang_Throwable_getStackTraceDepth;
+text: .text%Java_java_lang_Throwable_getStackTraceElement;
+text: .text%Java_java_lang_System_identityHashCode;
+text: .text%Java_sun_misc_Signal_findSignal;
+text: .text%Java_sun_misc_Signal_handle0;
+text: .text%JNU_NotifyAll;
+# Test LoadFrame
+text: .text%JNU_CallMethodByName;
+text: .text%JNU_CallMethodByNameV;
+text: .text%Java_java_util_logging_FileHandler_lockFile;
+text: .text%Java_java_io_FileOutputStream_open;
+text: .text%Java_java_io_UnixFileSystem_createDirectory;
+text: .text%Java_java_io_UnixFileSystem_getLastModifiedTime;
+text: .text%Java_java_util_prefs_FileSystemPreferences_lockFile0;
+text: .text%Java_java_io_UnixFileSystem_setLastModifiedTime;
+text: .text%Java_java_util_prefs_FileSystemPreferences_unlockFile0;
+text: .text%Java_java_io_FileOutputStream_close0;
+text: .text%Java_java_util_logging_FileHandler_unlockFile;
+# Test LoadJFrame
+text: .text%Java_java_lang_Class_isAssignableFrom;
+text: .text%Java_java_lang_Class_isInstance;
+# Test JHello
+# SwingSet
+text: .text%Java_java_util_TimeZone_getSystemTimeZoneID;
+text: .text%findJavaTZ_md;
+text: .text%Java_java_lang_StrictMath_log;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,107 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%init64IO: OUTPUTDIR/tmp/java/java.lang/java/obj/UnixFileSystem_md.o;
+text: .text%JNI_OnLoad;
+text: .text%Canonicalize;
+text: .text%canonicalize;
+text: .text%collapse: OUTPUTDIR/tmp/java/java.lang/java/obj/canonicalize_md.o;
+text: .text%Java_java_lang_Object_registerNatives;
+text: .text%Java_java_lang_System_registerNatives;
+text: .text%Java_java_lang_Thread_registerNatives;
+text: .text%Java_java_security_AccessController_getStackAccessControlContext;
+text: .text%Java_java_security_AccessController_getInheritedAccessControlContext;
+text: .text%Java_java_lang_ClassLoader_registerNatives;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2;
+text: .text%Java_java_lang_Class_registerNatives;
+text: .text%Java_java_io_ObjectStreamClass_initNative;
+text: .text%Java_java_lang_Class_getPrimitiveClass;
+text: .text%Java_java_lang_System_initProperties;
+text: .text%GetJavaProperties;
+text: .text%JNU_NewStringPlatform;
+text: .text%initializeEncoding: OUTPUTDIR/tmp/java/java.lang/java/obj/jni_util.o;
+text: .text%JNU_CallStaticMethodByName;
+text: .text%newString646_US: OUTPUTDIR/tmp/java/java.lang/java/obj/jni_util.o;
+text: .text%NewStringPlatform;
+text: .text%Java_java_io_FileInputStream_initIDs;
+text: .text%Java_java_io_FileDescriptor_initIDs;
+text: .text%Java_java_io_FileOutputStream_initIDs;
+text: .text%Java_java_lang_System_setIn0;
+text: .text%Java_sun_reflect_Reflection_getCallerClass;
+text: .text%Java_java_lang_Class_forName0;
+text: .text%Java_java_lang_Object_getClass;
+text: .text%Java_sun_reflect_Reflection_getClassAccessFlags;
+text: .text%Java_sun_reflect_NativeConstructorAccessorImpl_newInstance0;
+text: .text%Java_java_lang_System_setOut0;
+text: .text%Java_java_lang_System_setErr0;
+text: .text%Java_java_lang_System_identityHashCode;
+text: .text%Java_sun_misc_Signal_findSignal;
+text: .text%Java_sun_misc_Signal_handle0;
+text: .text%Java_java_io_FileSystem_getFileSystem;
+text: .text%JNU_NewObjectByName;
+text: .text%Java_java_io_UnixFileSystem_initIDs;
+text: .text%Java_java_io_UnixFileSystem_canonicalize;
+text: .text%JNU_GetStringPlatformChars;
+text: .text%JNU_ReleaseStringPlatformChars;
+text: .text%Java_java_io_FileInputStream_open;
+text: .text%fileOpen;
+text: .text%Java_java_io_FileInputStream_readBytes;
+text: .text%readBytes;
+text: .text%Java_java_io_FileInputStream_available;
+text: .text%Java_java_io_FileInputStream_close0;
+text: .text%Java_java_lang_System_mapLibraryName;
+text: .text%Java_java_io_UnixFileSystem_getBooleanAttributes0;
+text: .text%statMode: OUTPUTDIR/tmp/java/java.lang/java/obj/UnixFileSystem_md.o;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_load;
+text: .text%Java_java_lang_Compiler_registerNatives;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_find;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2;
+text: .text%Java_java_io_UnixFileSystem_list;
+text: .text%JNU_ClassString;
+text: .text%JNU_CopyObjectArray;
+text: .text%Java_java_lang_String_intern;
+text: .text%Java_java_lang_ClassLoader_findLoadedClass;
+text: .text%Java_java_lang_ClassLoader_findBootstrapClass;
+text: .text%Java_java_lang_Throwable_fillInStackTrace;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2Ljava_security_AccessControlContext_2;
+text: .text%Java_java_io_UnixFileSystem_getLastModifiedTime;
+text: .text%Java_java_lang_Float_floatToIntBits;
+text: .text%Java_java_lang_Double_doubleToLongBits;
+text: .text%Java_java_io_UnixFileSystem_getLength;
+text: .text%Java_java_lang_ClassLoader_defineClass0;
+text: .text%VerifyClassCodes;
+# Test Exit
+text: .text%Java_java_lang_Shutdown_halt;
+# Test Hello
+text: .text%Java_java_io_FileOutputStream_writeBytes;
+text: .text%writeBytes;
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+text: .text%Java_java_util_ResourceBundle_getClassContext;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2;
+text: .text%JNU_GetEnv;
+text: .text%Java_java_io_UnixFileSystem_checkAccess;
+text: .text%Java_java_lang_reflect_Array_newArray;
+text: .text%Java_java_lang_Throwable_getStackTraceDepth;
+text: .text%Java_java_lang_Throwable_getStackTraceElement;
+text: .text%throwFileNotFoundException;
+text: .text%JNU_NotifyAll;
+# Test LoadFrame
+text: .text%Java_java_lang_ref_Finalizer_invokeFinalizeMethod;
+text: .text%JNU_CallMethodByName;
+text: .text%JNU_CallMethodByNameV;
+text: .text%Java_java_io_UnixFileSystem_createDirectory;
+text: .text%Java_java_util_prefs_FileSystemPreferences_lockFile0;
+text: .text%Java_java_io_UnixFileSystem_setLastModifiedTime;
+text: .text%Java_java_util_prefs_FileSystemPreferences_unlockFile0;
+# Test LoadJFrame
+text: .text%Java_sun_reflect_NativeMethodAccessorImpl_invoke0;
+text: .text%Java_java_lang_Class_isInstance;
+# Test JHello
+# SwingSet
+text: .text%Java_java_lang_Class_isAssignableFrom;
+text: .text%Java_java_util_TimeZone_getSystemTimeZoneID;
+text: .text%findJavaTZ_md;
+text: .text%Java_java_lang_StrictMath_log;
+text: .text%Java_java_lang_StrictMath_sqrt;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,103 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%init64IO: OUTPUTDIR/tmp/java/java.lang/java/obj64/UnixFileSystem_md.o;
+text: .text%JNI_OnLoad;
+text: .text%Canonicalize;
+text: .text%canonicalize;
+text: .text%collapse: OUTPUTDIR/tmp/java/java.lang/java/obj64/canonicalize_md.o;
+text: .text%Java_java_lang_Object_registerNatives;
+text: .text%Java_java_lang_System_registerNatives;
+text: .text%Java_java_lang_Thread_registerNatives;
+text: .text%Java_java_security_AccessController_getStackAccessControlContext;
+text: .text%Java_java_security_AccessController_getInheritedAccessControlContext;
+text: .text%Java_java_lang_ClassLoader_registerNatives;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2;
+text: .text%Java_java_lang_Class_registerNatives;
+text: .text%Java_java_lang_Class_getPrimitiveClass;
+text: .text%Java_java_lang_System_initProperties;
+text: .text%GetJavaProperties;
+text: .text%JNU_NewStringPlatform;
+text: .text%initializeEncoding: OUTPUTDIR/tmp/java/java.lang/java/obj64/jni_util.o;
+text: .text%JNU_CallStaticMethodByName;
+text: .text%newString8859_1: OUTPUTDIR/tmp/java/java.lang/java/obj64/jni_util.o;
+text: .text%NewStringPlatform;
+text: .text%Java_java_io_FileInputStream_initIDs;
+text: .text%Java_java_io_FileDescriptor_initIDs;
+text: .text%Java_java_io_FileOutputStream_initIDs;
+text: .text%Java_java_lang_System_setIn0;
+text: .text%Java_sun_reflect_Reflection_getCallerClass;
+text: .text%Java_java_lang_Class_forName0;
+text: .text%Java_java_lang_String_intern;
+text: .text%Java_java_lang_Float_floatToIntBits;
+text: .text%Java_java_lang_Double_doubleToLongBits;
+text: .text%Java_java_lang_ClassLoader_findLoadedClass;
+text: .text%Java_java_lang_ClassLoader_findBootstrapClass;
+text: .text%VerifyClassCodes;
+text: .text%Java_java_lang_Throwable_fillInStackTrace;
+text: .text%Java_java_lang_System_setOut0;
+text: .text%Java_java_lang_System_setErr0;
+text: .text%Java_java_lang_System_identityHashCode;
+text: .text%Java_sun_misc_Signal_findSignal;
+text: .text%Java_sun_misc_Signal_handle0;
+text: .text%Java_java_io_FileSystem_getFileSystem;
+text: .text%JNU_NewObjectByName;
+text: .text%Java_java_io_UnixFileSystem_initIDs;
+text: .text%Java_java_io_UnixFileSystem_canonicalize;
+text: .text%JNU_GetStringPlatformChars;
+text: .text%JNU_ReleaseStringPlatformChars;
+text: .text%Java_java_io_FileInputStream_open;
+text: .text%fileOpen;
+text: .text%Java_java_io_FileInputStream_readBytes;
+text: .text%readBytes;
+text: .text%Java_java_io_FileInputStream_available;
+text: .text%Java_java_io_FileInputStream_close0;
+text: .text%Java_java_lang_Compiler_registerNatives;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2;
+text: .text%Java_java_io_UnixFileSystem_list;
+text: .text%JNU_ClassString;
+text: .text%JNU_CopyObjectArray;
+text: .text%Java_java_io_UnixFileSystem_getBooleanAttributes0;
+text: .text%statMode: OUTPUTDIR/tmp/java/java.lang/java/obj64/UnixFileSystem_md.o;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2Ljava_security_AccessControlContext_2;
+text: .text%Java_java_lang_System_mapLibraryName;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_load;
+text: .text%Java_java_lang_ClassLoader_00024NativeLibrary_find;
+text: .text%Java_java_io_UnixFileSystem_getLength;
+text: .text%Java_java_lang_Object_getClass;
+text: .text%Java_java_lang_ClassLoader_defineClass0;
+# Test Exit
+text: .text%Java_java_lang_Shutdown_halt;
+# Test Hello
+text: .text%Java_java_io_FileOutputStream_writeBytes;
+text: .text%writeBytes;
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+text: .text%Java_java_util_ResourceBundle_getClassContext;
+text: .text%Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedAction_2Ljava_security_AccessControlContext_2;
+text: .text%JNU_GetEnv;
+text: .text%Java_java_io_UnixFileSystem_checkAccess;
+text: .text%Java_java_lang_ref_Finalizer_invokeFinalizeMethod;
+text: .text%Java_java_lang_reflect_Array_newArray;
+text: .text%Java_java_lang_Throwable_getStackTraceDepth;
+text: .text%Java_java_lang_Throwable_getStackTraceElement;
+text: .text%throwFileNotFoundException: OUTPUTDIR/tmp/java/java.lang/java/obj64/io_util.o;
+text: .text%JNU_NotifyAll;
+# Test LoadFrame
+text: .text%JNU_CallMethodByName;
+text: .text%JNU_CallMethodByNameV;
+text: .text%Java_java_io_UnixFileSystem_createDirectory;
+text: .text%Java_java_io_UnixFileSystem_getLastModifiedTime;
+text: .text%Java_java_util_prefs_FileSystemPreferences_lockFile0;
+text: .text%Java_java_io_UnixFileSystem_setLastModifiedTime;
+text: .text%Java_java_util_prefs_FileSystemPreferences_unlockFile0;
+# Test LoadJFrame
+text: .text%Java_java_lang_Class_isAssignableFrom;
+text: .text%Java_java_lang_Class_isInstance;
+# Test JHello
+# SwingSet
+text: .text%Java_java_util_TimeZone_getSystemTimeZoneID;
+text: .text%findJavaTZ_md;
+text: .text%Java_java_lang_StrictMath_log;
+text: .text%Java_java_lang_StrictMath_sqrt;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java_crw_demo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,63 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+
+LIBRARY = java_crw_demo
+PRODUCT = sun
+LIBRARY_OUTPUT = java_crw_demo
+
+# Configure the CFLAGS for this library.
+
+include $(BUILDDIR)/common/Defs.gmk
+
+SRCDIR=$(SHARE_SRC)/demo/jvmti/java_crw_demo
+
+# Use the mapfile-vers (See the mapfile located with this Makefile)
+FILES_m = mapfile-vers
+ifdef FILES_m
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+#
+# Files to compile.
+#
+FILES_c = java_crw_demo.c
+
+OTHER_INCLUDES = -I$(SRCDIR)
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+# We don't want to link against -ljava
+JAVALIB=
+
+#
+# Add to ambient vpath so we pick up the library files
+#
+vpath %.c $(SRCDIR)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java_crw_demo/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    java_crw_demo;
+	    java_crw_demo_classname;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java_hprof_demo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,120 @@
+#
+# Copyright (c) 2003, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+LIBRARY = hprof
+PRODUCT = sun
+LIBRARY_OUTPUT = hprof_jvmti
+
+# Use highest optimization
+OPTIMIZATION_LEVEL = HIGHEST
+
+# Configure the CFLAGS for this library.
+FILES_m = mapfile-vers
+
+include $(BUILDDIR)/common/Defs.gmk
+
+SRCDIR=$(SHARE_SRC)/demo/jvmti/hprof
+PSRCDIR=$(PLATFORM_SRC)/demo/jvmti/hprof
+
+# Use the mapfile-vers (See the mapfile located with this Makefile)
+ifdef FILES_m
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+#
+# Files to compile.
+#
+FILES_c = 				\
+	debug_malloc.c 	\
+	hprof_blocks.c 	\
+	hprof_check.c 	\
+	hprof_class.c 	\
+	hprof_cpu.c 		\
+	hprof_error.c 	\
+	hprof_event.c 	\
+	hprof_frame.c 	\
+	hprof_init.c 	\
+	hprof_io.c 		\
+	hprof_ioname.c 	\
+	hprof_listener.c 	\
+	hprof_loader.c 	\
+	hprof_md.c 		\
+	hprof_monitor.c	\
+	hprof_object.c	\
+	hprof_reference.c	\
+	hprof_site.c 	\
+	hprof_stack.c 	\
+	hprof_string.c 	\
+	hprof_table.c 	\
+	hprof_tag.c 		\
+	hprof_tls.c 		\
+	hprof_trace.c	\
+	hprof_tracker.c 	\
+	hprof_util.c
+
+OTHER_INCLUDES = -I$(SRCDIR) \
+	         -I$(SHARE_SRC)/npt \
+	         -I$(PLATFORM_SRC)/npt \
+	         -I$(SHARE_SRC)/demo/jvmti/java_crw_demo
+
+ifeq ($(PLATFORM), windows)
+  OTHER_LDLIBS += wsock32.lib winmm.lib
+else
+  OTHER_LDLIBS += $(LIBSOCKET) $(LIBNSL) $(LIBDL)
+endif
+
+#
+# Tell library.gmk to copy the txt file first
+#
+INIT += $(LIBDIR)/jvm.hprof.txt
+
+#
+# This puts logging code in
+#
+CPPFLAGS_DBG += -DHPROF_LOGGING
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+# We don't want to link against -ljava
+JAVALIB=
+
+#
+# Add to ambient vpath so we pick up the library files
+#
+vpath %.c $(SRCDIR):$(PSRCDIR)
+
+#
+# Install the hprof prelude
+#
+$(LIBDIR)/jvm.hprof.txt: $(SRCDIR)/jvm.hprof.txt
+	$(install-file)
+
+clean clobber::
+	$(RM) $(LIBDIR)/jvm.hprof.txt
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/java_hprof_demo/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Agent_OnLoad;
+	    Agent_OnUnload;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/jexec/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,72 @@
+#
+# Copyright (c) 1999, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building jexec, a wrapper for direct execution of JAR files
+# on UNIX systems.
+#
+
+BUILDDIR = ../..
+
+PACKAGE = java.jexec
+PRODUCT = sun
+PROGRAM = jexec
+
+include $(BUILDDIR)/common/Defs.gmk
+
+ifeq ($(COMPILE_APPROACH),batch)
+  override COMPILE_APPROACH = normal
+endif
+
+include $(BUILDDIR)/common/Rules.gmk
+
+JEXE_SRC =      $(PLATFORM_SRC)/bin
+
+FILES_c =       jexec.c
+FILES_o =       $(patsubst %.c,$(OBJDIR)/%.o,$(FILES_c))
+
+vpath %.c       $(JEXE_SRC)
+
+ifeq ($(PLATFORM), linux)
+  #
+  # On Linux jexec goes in lib, not lib/<arch>
+  #
+  LIB_LOCATION = $(LIBDIR)
+
+  #
+  # Also include the manifest_info.h header file.
+  #
+  OTHER_INCLUDES += -I$(SHARE_SRC)/bin
+endif # PLATFORM
+
+build: $(LIB_LOCATION)/$(PROGRAM)
+
+$(LIB_LOCATION)/$(PROGRAM):: $(FILES_o)
+	$(prep-target)
+	$(LINK_PRE_CMD) $(CC) $(LDFLAGS) $(FILES_o) $(CC_OBJECT_OUTPUT_FLAG)$@
+
+clean clobber:: 
+	$(RM) $(FILES_o) $(LIB_LOCATION)/$(PROGRAM)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/jli/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,231 @@
+#
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Java Launcher Infrastructure Library (libjli)
+#
+# This library provides shared support for the Java launcher in all of
+# its manifestations (java, javaw, javac, ...).
+#
+BUILDDIR = ../..
+LIBRARY = jli
+PRODUCT = java
+
+#
+# Must be included before Defs.gmk to be functional.
+#
+# Note that for Windows, both a dynamic and static version are built.
+# Doing the compiles with the static library specified can be overridden
+# by the link step, but not the reverse.
+#
+MS_RUNTIME_STATIC = true
+
+include $(BUILDDIR)/common/Defs.gmk
+
+ifneq ($(SYSTEM_ZLIB),true)
+  ZIP_SRC = $(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+endif #SYSTEM_ZLIB
+LAUNCHER_SHARE_SRC = $(SHARE_SRC)/bin
+
+# set the platform specific directory for macosx, also this platform shares
+# substantial family ties with its siblings (solaris and linux), thus we add
+# solaris src path to its compilation dependencies.
+ifeq ($(PLATFORM), macosx)
+ LAUNCHER_PLATFORM_SRC = $(BUILDDIR)/../src/macosx/bin
+ LAUNCHER_SOLARIS_PLATFORM_SRC  = $(BUILDDIR)/../src/solaris/bin
+else # !MACOSX
+ LAUNCHER_PLATFORM_SRC = $(PLATFORM_SRC)/bin
+endif #PLATFORM
+
+ifeq ($(ZERO_BUILD), true)
+  ERGO_FAMILY=zero
+else # !ZERO_BUILD
+  ifneq (,$(findstring $(ARCH_FAMILY), amd64 x86_64))
+    ERGO_FAMILY=i586
+  else # !X86 FAMILY
+    ERGO_FAMILY=$(ARCH_FAMILY)
+  endif #ARCH_FAMILY
+endif # ZERO_BUILD
+
+#
+# Files to compile.
+#
+FILES_c = java.c \
+          splashscreen_stubs.c \
+          parse_manifest.c \
+          version_comp.c \
+          wildcard.c \
+          jli_util.c
+
+ifneq ($(SYSTEM_ZLIB),true)
+  FILES_c += inflate.c \
+             inftrees.c \
+             inffast.c \
+             zadler32.c \
+             zcrc32.c \
+             zutil.c
+endif # SYSTEM_ZLIB
+
+# add platform specific files
+ifeq ($(PLATFORM), windows)
+  FILES_c += java_md.c
+else # NIXES
+  FILES_c += java_md_common.c
+  ifeq ($(PLATFORM), macosx)
+    FILES_c += java_md_macosx.c
+  else # SOLARIS/LINUX
+    FILES_c += java_md_solinux.c
+    FILES_c += ergo.c 
+    ERGO_ARCH_FILE = ergo_$(ERGO_FAMILY).c
+    # if the architecture specific ergo file exists then
+    # use it, else use the generic definitions from ergo.c
+    ifneq ($(wildcard $(LAUNCHER_PLATFORM_SRC)/$(ERGO_ARCH_FILE)),)
+      FILES_c += $(ERGO_ARCH_FILE)
+    else # !ERGO_ARCH_FILE
+      OTHER_CPPFLAGS += -DUSE_GENERIC_ERGO
+    endif # ERGO_ARCH_FILE
+  endif #MACOSX
+endif #WINDOWS
+
+# Names of arch directories
+LIBARCH_DEFINES = -DLIBARCHNAME='"$(LIBARCH)"'
+ifeq ($(PLATFORM), solaris)
+  LIBARCH_DEFINES += -DLIBARCH32NAME='"$(LIBARCH32)"'
+  LIBARCH_DEFINES += -DLIBARCH64NAME='"$(LIBARCH64)"'
+endif # PLATFORM
+
+ifeq ($(PLATFORM), macosx)
+  OTHER_CPPFLAGS += $(LIBARCH_DEFINES) -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
+else # ! MACOSX
+  OTHER_CPPFLAGS += $(LIBARCH_DEFINES)
+endif #PLATFORM
+
+ifneq ($(PLATFORM), windows)	# UNIX systems
+  ifeq ($(PLATFORM), macosx)
+    LIB_LOCATION = $(LIBDIR)/jli
+  else # SOLARIS/LINUX
+    LD_RUNPATH_EXTRAS += ..
+    LIB_LOCATION = $(LIBDIR)/$(LIBARCH)/jli
+    # Note: it is important to keep this order, meaning -lc as the
+    # last library, otherwise it could cause compatibility issues
+    # by pulling in SUNW_private symbols from libc
+    LDLIBS = -ldl -lc
+    ifeq ($(USE_PTHREADS),true)
+      LDLIBS += -lpthread
+    endif # USE_PTHREADS 
+  endif # PLATFORM
+endif # PLATFORM
+
+ifeq ($(PLATFORM), windows)
+  EXTRA_LIBS = advapi32.lib \
+               comctl32.lib \
+               user32.lib
+  JAVALIB =
+  OTHER_LCF = -export:JLI_Launch \
+              -export:JLI_ManifestIterate \
+              -export:JLI_SetTraceLauncher \
+              -export:JLI_ReportErrorMessage \
+              -export:JLI_ReportErrorMessageSys \
+              -export:JLI_ReportMessage \
+              -export:JLI_ReportExceptionDescription
+endif # PLATFORM
+
+OTHER_INCLUDES += -I$(LAUNCHER_SHARE_SRC)
+OTHER_INCLUDES += -I$(LAUNCHER_PLATFORM_SRC)
+ifneq ($(SYSTEM_ZLIB),true)
+  OTHER_INCLUDES += -I$(ZIP_SRC)
+else # !SYSTEM_ZLIB
+  LDLIBS += -lz
+endif # SYSTEM_ZLIB
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# On Windows, some executable objects need to be statically linked against
+# the jli library.  Hence, we need both a standard library (archive) and
+# an import library (associated with a dll).  These both usually have the
+# extension .LIB, so they need to be placed in different directories.  The
+# import library is build (as usual) in the $(OBJDIR) directory while the
+# standard library is built in a "static" subdirectory.  The standard library
+# is not delivered as part of the product, but is only needed as part of
+# the build process.  The import library is built by the standard rules
+# in Library.gmk.  The additional rules which follow build the standard
+# library.
+#
+ifeq ($(PLATFORM), windows)
+  STATIC_LIBRARY = $(OBJDIR)/static/$(LIBPREFIX)$(LIBRARY).lib
+
+  $(STATIC_LIBRARY): $(FILES_o)
+	@$(prep-target)
+	$(AR) -nologo -out:$@ $(FILES_o)
+
+  library:: $(STATIC_LIBRARY)
+else
+
+ifeq ($(PLATFORM), macosx)
+  # Some Obj-C code is embedded in java_md_macosx.c, we stipulate so, using
+  # "-x" option. Not doing so will cause the compiler to choose the language
+  # based on the filename suffix, also "-Os" optimizes the file for size.
+  CFLAGS_$(VARIANT)/java_md_macosx.o = -Os -x objective-c
+  # Needed for linking the various launchers
+  LDFLAGS += -framework Cocoa -framework Security \
+             -framework ApplicationServices
+  # Add solaris sources containing common logic to the header path
+  OTHER_INCLUDES += -I$(LAUNCHER_SOLARIS_PLATFORM_SRC)
+endif # PLATFORM macosx
+
+STATIC_LIBRARY_DIR = $(OBJDIR)/static
+STATIC_LIBRARY_NAME = lib$(LIBRARY).a
+STATIC_LIBRARY = $(STATIC_LIBRARY_DIR)/$(STATIC_LIBRARY_NAME)
+
+$(STATIC_LIBRARY_DIR): | $(OBJDIR)
+	@$(MKDIR) $(STATIC_LIBRARY_DIR)
+
+$(STATIC_LIBRARY): $(STATIC_LIBRARY_DIR)
+	@$(prep-target)
+	$(AR) $(ARFLAGS) $@ $(FILES_o)
+
+library:: $(STATIC_LIBRARY)
+endif # NOT WINDOWS
+
+vpath %.c $(LAUNCHER_SHARE_SRC) $(LAUNCHER_PLATFORM_SRC)
+ifneq ($(SYSTEM_ZLIB),true)
+  vpath %.c $(ZIP_SRC)
+else # !SYSTEM_ZLIB
+  #
+  # Add to ambient vpath so we pick up the library files, for macos we add 
+  # solaris sources which contains the common logic for all nixes
+  #
+  ifeq ($(PLATFORM), macosx)
+    vpath %.c $(LAUNCHER_SHARE_SRC) $(ZIP_SRC) $(LAUNCHER_PLATFORM_SRC) \
+          $(LAUNCHER_SOLARIS_PLATFORM_SRC)
+  else # !MACOSX
+    vpath %.c $(LAUNCHER_SHARE_SRC) $(ZIP_SRC) $(LAUNCHER_PLATFORM_SRC)
+  endif # MACOSX
+endif # SYSTEM_LIB
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/jli/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2005, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JLI_Launch;
+		JLI_ManifestIterate;
+		JLI_SetTraceLauncher;
+		JLI_ReportErrorMessage;
+		JLI_ReportErrorMessageSys;
+		JLI_ReportMessage;
+		JLI_ReportExceptionDescription;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/jobjc/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,76 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building jobjc
+
+BUILDDIR = ../..
+include $(BUILDDIR)/common/Defs.gmk
+SRCDIR = $(JDK_TOPDIR)/src/macosx/native/jobjc
+
+ifeq ($(PLATFORM),macosx)
+
+# FRAMEWORKS for which we want to build bridge support
+FRAMEWORKS = Foundation CoreFoundation AppKit
+
+# metadata stuff
+GEN_DIR = $(OUTPUTDIR)/bridge_metadata
+STABLE_GEN_DIR = $(OUTPUTDIR)/stable_bridge_metadata
+STABLE_METADATA_FILES = $(addsuffix Full.bridgesupport,$(addprefix $(STABLE_GEN_DIR)/,$(FRAMEWORKS)))
+
+# source files
+CORE_SRC = $(shell $(FIND) $(SRCDIR) -type f -name "*.hs" -or -name "*.java" -or -name "*.m" -or -name "*.h" -print)
+GENERATOR_SRC = $(shell $(FIND) $(SRCDIR) -type f -name "*.java" -print)
+ADDITIONS_SRC = $(shell $(FIND) $(SRCDIR) -type f -name "*.java" -or -name "*.m" -or -name "*.h" -print)
+BUILD_SRC = $(SRCDIR)/JObjC.xcodeproj/project.pbxproj $(SRCDIR)/bridgesupport.gmk $(SRCDIR)/build.xml $(SRCDIR)/extract_classes.pl $(SRCDIR)/run-and-write-if-okay $(SRCDIR)/rungen $(SRCDIR)/runjava
+
+# jobjc products for jdk
+BUILT_DYLIB = $(OUTPUTDIR)/JObjC.dst/Debug/libJObjC.dylib
+BUILT_JAR = $(OUTPUTDIR)/JObjC.build/JObjC.jar
+
+$(GEN_DIR):
+	mkdir -p $(GEN_DIR)
+
+stabilize: $(GEN_DIR)
+	@echo Updating bridge support in $(GEN_DIR)
+	($(CD) $(GEN_DIR); $(MAKE) STABLE_GEN_DIR="$(STABLE_GEN_DIR)" FRAMEWORKS="$(FRAMEWORKS)" -f $(SRCDIR)/bridgesupport.gmk all)
+
+$(STABLE_METADATA_FILES): stabilize
+
+ABS_OUTPUTDIR=$(realpath $(OUTPUTDIR))
+ABS_STABLE_GEN_DIR=$(realpath $(STABLE_GEN_DIR))
+
+$(BUILT_DYLIB) $(BUILT_JAR): $(STABLE_METADATA_FILES) $(CORE_SRC) $(GENERATOR_SRC) $(ADDITIONS_SRC) $(BUILD_SRC)
+	@echo JObjC dylib or jar out of data wrt FRAMEWORKS '(' $(FRAMEWORKS) ')' or JObjC source '(' core, generator, additions, build ')'
+	@echo Running ant with java_home set to ${ALT_BOOTDIR}
+	(cd $(SRCDIR); OBJROOT="$(ABS_OUTPUTDIR)/JObjC.build" DSTROOT="$(ABS_OUTPUTDIR)/JObjC.dst" JAVA_HOME=${ALT_BOOTDIR} STABLE_GEN_DIR="$(ABS_STABLE_GEN_DIR)" /usr/bin/ant -verbose all)
+
+all: $(BUILD_DYLIB) $(BUILT_JAR)
+	$(CP) $(BUILT_DYLIB) $(LIB_LOCATION)/libJObjC.dylib
+
+clean clobber::
+	(cd $(SRCDIR); export OBJROOT=$(OUTPUTDIR)/JObjC.build; export DSTROOT=$(OUTPUTDIR)/JObjC.dst; /usr/bin/ant clean)
+
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/jvm/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,95 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+
+include $(BUILDDIR)/common/Defs.gmk
+
+JVMCFG = $(JVMCFG_DIR)/jvm.cfg
+
+#
+# How to install jvm.cfg.
+#
+ifeq ($(ZERO_BUILD), true)
+JVMCFG_ARCH = zero
+else
+JVMCFG_ARCH = $(ARCH)
+endif
+
+ifeq ($(PLATFORM),macosx)
+  JVMCFG_SRC=$(PLATFORM_SRC_MACOS)/bin/$(JVMCFG_ARCH)/jvm.cfg
+  JVMCFG_DIR = $(LIBDIR)
+else
+  JVMCFG_SRC=$(PLATFORM_SRC)/bin/$(JVMCFG_ARCH)/jvm.cfg
+  JVMCFG_DIR = $(LIBDIR)/$(LIBARCH)
+endif
+
+ifeq ($(ARCH_DATA_MODEL),32)
+    # On 32 bit machines, we can have client and/or server libjvms installed.
+    # Since the currently committed jvm.cfg expects clientANDserver, we need 
+    # to patch the jvm.cfg when we have built only a client or only a server.
+    # This should also support -kernel, -zero and -zeroshark.
+    ifeq ($(JVM_VARIANTS),$(COMMA)client$(COMMA))
+        # Create a patched jvm.cfg to use -client by default and alias -server to -client.
+        $(JVMCFG)::
+		$(MKDIR) -p $(JVMCFG_DIR)
+		$(RM) -f $(JVMCFG)
+		$(PRINTF) "-client KNOWN\n">$(JVMCFG)
+		$(PRINTF) "-server IGNORE\n">>$(JVMCFG)
+		$(PRINTF) "-hotspot ALIASED_TO -client\n">>$(JVMCFG)
+		$(PRINTF) "-classic WARN\n">>$(JVMCFG)
+		$(PRINTF) "-native ERROR\n">>$(JVMCFG)
+		$(PRINTF) "-green ERROR\n">>$(JVMCFG)
+    else
+        ifeq ($(JVM_VARIANTS),$(COMMA)server$(COMMA))
+            # Create a patched jvm.cfg to use -server by default and alias -client to -server.
+            $(JVMCFG)::
+		$(MKDIR) -p $(JVMCFG_DIR)
+		$(RM) -f $(JVMCFG)
+		$(PRINTF) "-server KNOWN\n">$(JVMCFG)
+		$(PRINTF) "-client IGNORE\n">>$(JVMCFG)
+		$(PRINTF) "-hotspot IGNORE\n">>$(JVMCFG)
+		$(PRINTF) "-classic WARN\n">>$(JVMCFG)
+		$(PRINTF) "-native ERROR\n">>$(JVMCFG)
+		$(PRINTF) "-green ERROR\n">>$(JVMCFG)
+        else
+            # Use the default jvm.cfg for this 32 bit setup. 
+            $(JVMCFG): $(JVMCFG_SRC)
+		$(install-file)
+        endif
+    endif
+else
+    # Use the default jvm.cfg for this 64 bit setup.
+    $(JVMCFG): $(JVMCFG_SRC)
+	$(install-file)
+endif
+
+all: build
+
+build: $(JVMCFG)
+
+clean clobber:: 
+	$(RM) $(JVMCFG)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,43 @@
+#
+# Copyright (c) 1998, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building java command line tools
+#
+
+BUILDDIR = ../..
+PRODUCT = java
+include $(BUILDDIR)/common/Defs.gmk
+
+ifeq ($(PLATFORM), windows) 
+SUBDIRS = java javaw
+else 
+SUBDIRS = java
+endif 
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/java/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,64 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PROGRAM = java
+PRODUCT = java
+
+#
+# Statically link java to avoid the dependency on msvcrNN.dll.  This
+# must be set before Defs.gmk is included.
+#
+MS_RUNTIME_STATIC = true
+#
+# Statically link java to avoid the dependency on jli.dll.  This
+# must be set before Program.gmk is included.
+#
+STATIC_JLI = true
+
+include $(BUILDDIR)/common/Defs.gmk
+
+# Override the default version info with our own resource file (see 5106536)
+ifeq ($(PLATFORM), windows)
+LDLIBS_COMMON += user32.lib comctl32.lib
+
+ifdef OPENJDK
+    RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
+else
+    RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
+endif
+  VERSIONINFO_RESOURCE = $(PLATFORM_SRC)/resource/java.rc
+endif
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Program.gmk
+OTHER_CPPFLAGS += -DEXPAND_CLASSPATH_WILDCARDS
+OTHER_CPPFLAGS += -DLAUNCHER_NAME='"$(LAUNCHER_NAME)"'
+
+ifeq ($(PLATFORM), solaris)
+LDFLAGS += -R$(OPENWIN_LIB)
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/java/mapfile-amd64	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/java/mapfile-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,48 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+#		_mcount;
+		__fsr;
+		__fsr_init_value;
+		__longdouble_used;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/java/mapfile-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,47 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+		__cg92_used;
+		__xargc;
+		__xargv;
+		__fsr_init_value;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/java/mapfile-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,48 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+		__xargc;
+		__xargv;
+		__fsr_init_value;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/main/javaw/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,66 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building javaw.exe (for windows)
+#
+
+BUILDDIR = ../../..
+PROGRAM = javaw
+PRODUCT = java
+
+#
+# Statically link javaw to avoid the dependency on msvcrNN.dll.  This
+# must be set before Defs.gmk is included.
+#
+MS_RUNTIME_STATIC = true
+#
+# Statically link javaw to avoid the dependency on jli.dll.  This
+# must be set before Program.gmk is included.
+#
+STATIC_JLI = true
+
+include $(BUILDDIR)/common/Defs.gmk
+
+OTHER_CPPFLAGS += -DJAVAW
+LDLIBS_COMMON +=  user32.lib comctl32.lib
+
+# Override the default version info with our own resource file (see 5106536)
+ifeq ($(PLATFORM), windows)
+ifdef OPENJDK
+    RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
+else
+    RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
+endif
+  VERSIONINFO_RESOURCE = $(PLATFORM_SRC)/resource/java.rc
+endif
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Program.gmk
+OTHER_CPPFLAGS += -DEXPAND_CLASSPATH_WILDCARDS
+OTHER_CPPFLAGS += -DLAUNCHER_NAME='"$(LAUNCHER_NAME)"'
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/management/Exportedfiles.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,42 @@
+#
+# Copyright (c) 2003, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# These are the names of Java classes for which we will make .h files.
+#
+
+FILES_export = \
+	sun/management/ClassLoadingImpl.java \
+	sun/management/FileSystemImpl.java \
+	sun/management/Flag.java \
+	sun/management/GarbageCollectorImpl.java \
+	sun/management/GcInfoBuilder.java \
+	sun/management/HotSpotDiagnostic.java \
+	sun/management/HotspotThread.java \
+	sun/management/MemoryImpl.java \
+	sun/management/MemoryManagerImpl.java \
+	sun/management/MemoryPoolImpl.java \
+	sun/management/ThreadImpl.java \
+	sun/management/VMManagementImpl.java 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/management/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,40 @@
+#
+# Copyright (c) 2003, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	ClassLoadingImpl.c \
+	FileSystemImpl.c \
+	Flag.c \
+	GarbageCollectorImpl.c \
+	GcInfoBuilder.c \
+	HotSpotDiagnostic.c \
+	HotspotThread.c \
+	MemoryImpl.c \
+	MemoryManagerImpl.c \
+	MemoryPoolImpl.c \
+	ThreadImpl.c \
+	VMManagementImpl.c \
+	management.c
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/management/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,131 @@
+#
+# Copyright (c) 2003, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = java.lang.management
+LIBRARY = management
+PRODUCT = java
+include $(BUILDDIR)/common/Defs.gmk
+
+MGMT_SRC  = $(SHARE_SRC)/classes/java/lang/management
+SMGMT_SRC = $(SHARE_SRC)/classes/sun/management
+
+AGENTJAR = $(LIBDIR)/management-agent.jar
+MANIFEST = $(SMGMT_SRC)/manifest
+
+#
+# Use mapfile
+#
+FILES_m = mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files to compile
+#
+include FILES_c.gmk
+
+# We don't need snmp here.
+AUTO_JAVA_PRUNE = snmp
+AUTO_FILES_JAVA_DIRS = java/lang/management com/sun/management sun/management
+
+include Exportedfiles.gmk
+
+ifeq ($(PLATFORM),windows)
+
+FILES_c     +=  OperatingSystem_md.c
+
+FILES_export +=	com/sun/management/OperatingSystem.java
+
+else # PLATFORM (i.e. solaris & linux)
+
+FILES_c     +=  UnixOperatingSystem_md.c
+
+FILES_export +=	com/sun/management/UnixOperatingSystem.java
+
+ifeq ($(PLATFORM),solaris)
+
+FILES_c     += SolarisOperatingSystem.c
+OTHER_LDLIBS += -lkstat
+
+endif # PLATFORM solaris
+
+ifeq ($(PLATFORM),linux)
+
+FILES_c     += LinuxOperatingSystem.c
+
+endif # PLATFORM linux
+
+ifeq ($(PLATFORM),macosx)
+
+FILES_c     += MacosxOperatingSystem.c
+
+endif # PLATFORM macosx
+
+endif # PLATFORM
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+RESOURCE_BUNDLES_COMPILED_PROPERTIES = sun/management/resources/agent.properties
+
+#
+# Find C source files
+#
+vpath %.c $(SHARE_SRC)/native/sun/management
+vpath %.c $(PLATFORM_SRC)/native/sun/management
+vpath %.c $(PLATFORM_SRC)/native/com/sun/management
+
+#
+# Access to management.h 
+#
+
+OTHER_INCLUDES += \
+  -I$(SHARE_SRC)/native/sun/management 
+
+ifeq ($(PLATFORM),windows)
+  # Need process status helper API (psapi) on Windows
+  OTHER_LDLIBS += $(JVMLIB) psapi.lib
+endif
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+$(AGENTJAR): $(LIBDIR) $(TEMPDIR)/manifest
+	$(BOOT_JAR_CMD) -cfm $(AGENTJAR) $(TEMPDIR)/manifest $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+$(TEMPDIR)/manifest: $(MANIFEST)
+	$(install-manifest-file)
+
+build: $(AGENTJAR)
+
+clean clobber::
+	$(RM) -r $(CLASSDESTDIR)/java/management
+	$(RM) -r $(CLASSDESTDIR)/sun/management
+	$(RM) $(TEMPDIR)/manifest $(AGENTJAR)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/management/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,120 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Java_com_sun_management_UnixOperatingSystem_getCommittedVirtualMemorySize;
+	    Java_com_sun_management_UnixOperatingSystem_getFreePhysicalMemorySize;
+	    Java_com_sun_management_UnixOperatingSystem_getFreeSwapSpaceSize;
+	    Java_com_sun_management_UnixOperatingSystem_getMaxFileDescriptorCount;
+	    Java_com_sun_management_UnixOperatingSystem_getOpenFileDescriptorCount;
+	    Java_com_sun_management_UnixOperatingSystem_getProcessCpuLoad;
+	    Java_com_sun_management_UnixOperatingSystem_getProcessCpuTime;
+	    Java_com_sun_management_UnixOperatingSystem_getSystemCpuLoad;
+	    Java_com_sun_management_UnixOperatingSystem_getTotalPhysicalMemorySize;
+	    Java_com_sun_management_UnixOperatingSystem_getTotalSwapSpaceSize;
+	    Java_com_sun_management_UnixOperatingSystem_initialize;
+	    Java_sun_management_ClassLoadingImpl_setVerboseClass;
+	    Java_sun_management_FileSystemImpl_isAccessUserOnly0;
+	    Java_sun_management_Flag_getAllFlagNames;
+	    Java_sun_management_Flag_getFlags;
+	    Java_sun_management_Flag_getInternalFlagCount;
+	    Java_sun_management_Flag_initialize;
+	    Java_sun_management_Flag_setLongValue;
+	    Java_sun_management_Flag_setBooleanValue;
+	    Java_sun_management_Flag_setStringValue;
+	    Java_sun_management_GarbageCollectorImpl_getCollectionCount;
+	    Java_sun_management_GarbageCollectorImpl_getCollectionTime;
+	    Java_sun_management_GarbageCollectorImpl_setNotificationEnabled;
+	    Java_sun_management_GcInfoBuilder_fillGcAttributeInfo;
+	    Java_sun_management_GcInfoBuilder_getLastGcInfo0;
+	    Java_sun_management_GcInfoBuilder_getNumGcExtAttributes;
+	    Java_sun_management_HotSpotDiagnostic_dumpHeap;
+	    Java_sun_management_HotspotThread_getInternalThreadCount;
+	    Java_sun_management_HotspotThread_getInternalThreadTimes0;
+	    Java_sun_management_MemoryImpl_getMemoryManagers0;
+	    Java_sun_management_MemoryImpl_getMemoryPools0;
+	    Java_sun_management_MemoryImpl_getMemoryUsage0;
+	    Java_sun_management_MemoryImpl_setVerboseGC;
+	    Java_sun_management_MemoryManagerImpl_getMemoryPools0;
+	    Java_sun_management_MemoryPoolImpl_getCollectionUsage0;
+	    Java_sun_management_MemoryPoolImpl_getMemoryManagers0;
+	    Java_sun_management_MemoryPoolImpl_getPeakUsage0;
+	    Java_sun_management_MemoryPoolImpl_getUsage0;
+	    Java_sun_management_MemoryPoolImpl_resetPeakUsage0;
+	    Java_sun_management_MemoryPoolImpl_setCollectionThreshold0;
+	    Java_sun_management_MemoryPoolImpl_setPoolCollectionSensor;
+	    Java_sun_management_MemoryPoolImpl_setPoolUsageSensor;
+	    Java_sun_management_MemoryPoolImpl_setUsageThreshold0;
+	    Java_sun_management_ThreadImpl_dumpThreads0;
+	    Java_sun_management_ThreadImpl_findDeadlockedThreads0;
+	    Java_sun_management_ThreadImpl_findMonitorDeadlockedThreads0;
+	    Java_sun_management_ThreadImpl_getThreadInfo1;
+	    Java_sun_management_ThreadImpl_getThreads;
+	    Java_sun_management_ThreadImpl_getThreadTotalCpuTime0;
+	    Java_sun_management_ThreadImpl_getThreadTotalCpuTime1;
+	    Java_sun_management_ThreadImpl_getThreadUserCpuTime0;
+	    Java_sun_management_ThreadImpl_getThreadUserCpuTime1;
+	    Java_sun_management_ThreadImpl_getThreadAllocatedMemory1;
+	    Java_sun_management_ThreadImpl_resetContentionTimes0;
+	    Java_sun_management_ThreadImpl_resetPeakThreadCount0;
+	    Java_sun_management_ThreadImpl_setThreadContentionMonitoringEnabled0;
+	    Java_sun_management_ThreadImpl_setThreadCpuTimeEnabled0;
+	    Java_sun_management_ThreadImpl_setThreadAllocatedMemoryEnabled0;
+	    Java_sun_management_VMManagementImpl_getAvailableProcessors;
+	    Java_sun_management_VMManagementImpl_getClassInitializationTime;
+	    Java_sun_management_VMManagementImpl_getClassLoadingTime;
+	    Java_sun_management_VMManagementImpl_getClassVerificationTime;
+	    Java_sun_management_VMManagementImpl_getDaemonThreadCount;
+	    Java_sun_management_VMManagementImpl_getInitializedClassCount;
+	    Java_sun_management_VMManagementImpl_getLiveThreadCount;
+	    Java_sun_management_VMManagementImpl_getLoadedClassSize;
+	    Java_sun_management_VMManagementImpl_getMethodDataSize;
+	    Java_sun_management_VMManagementImpl_getPeakThreadCount;
+	    Java_sun_management_VMManagementImpl_getProcessId;
+	    Java_sun_management_VMManagementImpl_getSafepointCount;
+	    Java_sun_management_VMManagementImpl_getSafepointSyncTime;
+	    Java_sun_management_VMManagementImpl_getStartupTime;
+	    Java_sun_management_VMManagementImpl_getTotalApplicationNonStoppedTime;
+	    Java_sun_management_VMManagementImpl_getTotalClassCount;
+	    Java_sun_management_VMManagementImpl_getTotalCompileTime;
+	    Java_sun_management_VMManagementImpl_getTotalSafepointTime;
+	    Java_sun_management_VMManagementImpl_getTotalThreadCount;
+	    Java_sun_management_VMManagementImpl_getUnloadedClassCount;
+	    Java_sun_management_VMManagementImpl_getUnloadedClassSize;
+	    Java_sun_management_VMManagementImpl_getVerboseClass;
+	    Java_sun_management_VMManagementImpl_getVerboseGC;
+	    Java_sun_management_VMManagementImpl_getVersion0;
+	    Java_sun_management_VMManagementImpl_getVmArguments0;
+	    Java_sun_management_VMManagementImpl_initOptionalSupportFields;
+	    Java_sun_management_VMManagementImpl_isThreadContentionMonitoringEnabled;
+	    Java_sun_management_VMManagementImpl_isThreadCpuTimeEnabled;
+	    Java_sun_management_VMManagementImpl_isThreadAllocatedMemoryEnabled;
+            JNI_OnLoad;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/net/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+#
+# Copyright (c) 1996, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	DatagramPacket.c \
+	InetAddress.c \
+	Inet4Address.c \
+	Inet6Address.c \
+	NetworkInterface.c \
+	InetAddressImplFactory.c \
+	Inet4AddressImpl.c \
+	Inet6AddressImpl.c \
+	SocketInputStream.c \
+	SocketOutputStream.c \
+	net_util.c \
+	net_util_md.c \
+	ResolverConfigurationImpl.c \
+	DefaultProxySelector.c
+
+ifeq ($(PLATFORM), linux)
+    FILES_c += linux_close.c
+endif
+
+ifeq ($(PLATFORM), macosx)
+    FILES_c += bsd_close.c
+endif
+
+ifeq ($(PLATFORM), windows)
+    FILES_c += TwoStacksPlainSocketImpl.c
+    FILES_c += DualStackPlainSocketImpl.c
+    FILES_c += TwoStacksPlainDatagramSocketImpl.c
+    FILES_c += DualStackPlainDatagramSocketImpl.c
+else
+    FILES_c += PlainSocketImpl.c
+    FILES_c += PlainDatagramSocketImpl.c
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/net/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,141 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = java.net
+LIBRARY = net
+PRODUCT = sun
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+JAVAC_LINT_OPTIONS = -Xlint:all,-deprecation
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+AUTO_FILES_JAVA_DIRS = java/net
+
+ifeq ($(PLATFORM), windows)
+    FILES_c += NTLMAuthSequence.c
+    FILES_c += NetworkInterface_winXP.c
+else
+    FILES_c += SdpSupport.c
+endif
+
+FILES_export = \
+    java/net/Socket.java \
+    java/net/SocketOptions.java \
+    java/net/SocketImpl.java \
+    java/net/AbstractPlainSocketImpl.java \
+    java/net/PlainSocketImpl.java \
+    java/net/ServerSocket.java \
+    java/net/InetAddress.java \
+    java/net/Inet4Address.java \
+    java/net/Inet6Address.java \
+    java/net/InetAddressImpl.java \
+    java/net/Inet4AddressImpl.java \
+    java/net/Inet6AddressImpl.java \
+    java/net/NetworkInterface.java \
+    java/net/SocketInputStream.java \
+    java/net/SocketOutputStream.java \
+    java/net/DefaultDatagramSocketImplFactory.java \
+    java/net/DatagramPacket.java \
+    java/net/DatagramSocket.java \
+    java/net/DatagramSocketImpl.java \
+    java/net/AbstractPlainDatagramSocketImpl.java \
+    java/net/MulticastSocket.java \
+    java/net/UnknownHostException.java \
+    java/net/ProtocolException.java \
+    sun/net/spi/DefaultProxySelector.java
+
+ifeq ($(PLATFORM), windows) 
+    FILES_export += java/net/TwoStacksPlainSocketImpl.java
+    FILES_export += java/net/DualStackPlainSocketImpl.java
+    FILES_export += java/net/TwoStacksPlainDatagramSocketImpl.java
+    FILES_export += java/net/DualStackPlainDatagramSocketImpl.java
+else
+    FILES_export += java/net/PlainDatagramSocketImpl.java
+endif
+
+#
+# Find platform specific native code
+#
+vpath %.c $(PLATFORM_SRC)/native/sun/net/dns $(PLATFORM_SRC)/native/sun/net/www/protocol/http/ntlm \
+    $(PLATFORM_SRC)/native/sun/net/sdp $(PLATFORM_SRC)/native/sun/net/spi
+
+#
+# Include rules
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+include $(BUILDDIR)/common/Library.gmk
+
+ifeq ($(PLATFORM), macosx)
+ifdef DONT_ENABLE_IPV6
+  OTHER_CFLAGS += -DDONT_ENABLE_IPV6
+endif
+  OTHER_LDLIBS = $(JVMLIB) -pthread
+else
+ifeq ($(PLATFORM), windows)
+  OTHER_LDLIBS = ws2_32.lib $(JVMLIB) \
+                 secur32.lib iphlpapi.lib delayimp.lib \
+                 /DELAYLOAD:secur32.dll /DELAYLOAD:iphlpapi.dll
+else
+  OTHER_LDLIBS = $(LIBSOCKET) $(LIBNSL) $(LIBDL) $(JVMLIB)
+endif
+ifeq ($(PLATFORM), linux)
+  OTHER_LDLIBS += -lpthread
+endif
+endif # PLATFORM
+
+CLASSES.export += java.lang.Integer java.io.FileDescriptor java.net.InetAddressImplFactory java.net.Inet4AddressImpl java.net.Inet6AddressImpl
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+
+MISC_FILES = $(LIBDIR) $(LIBDIR)/net.properties
+
+$(LIBDIR)/net.properties: $(SHARE_SRC)/lib/net.properties
+	$(install-file)
+
+# 
+# SDP configuration template
+#
+ifeq ($(PLATFORM), solaris)
+SDP_PATH = sdp/sdp.conf.template
+SDP_CONF = $(LIBDIR)/$(SDP_PATH)
+$(SDP_CONF): $(PLATFORM_SRC)/lib/$(SDP_PATH)
+	@$(RM) $*
+	$(install-file)
+
+MISC_FILES += $(SDP_CONF)
+endif
+
+build: $(MISC_FILES)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/net/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,109 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+		Java_java_net_PlainSocketImpl_socketListen;
+		Java_java_net_PlainDatagramSocketImpl_getTTL;
+		Java_java_net_PlainDatagramSocketImpl_init;
+		Java_java_net_SocketOutputStream_socketWrite0;
+		Java_java_net_PlainSocketImpl_socketCreate;
+		Java_java_net_PlainSocketImpl_socketAvailable;
+		Java_java_net_PlainDatagramSocketImpl_join;
+		Java_java_net_PlainDatagramSocketImpl_socketGetOption;
+		Java_java_net_InetAddress_init;
+		Java_java_net_Inet4Address_init;
+		Java_java_net_Inet6Address_init;
+		Java_java_net_PlainDatagramSocketImpl_setTTL;
+		Java_java_net_PlainDatagramSocketImpl_socketSetOption;
+		Java_java_net_PlainDatagramSocketImpl_bind0;
+		Java_java_net_PlainSocketImpl_socketAccept;
+		Java_java_net_DatagramPacket_init;
+		Java_java_net_PlainDatagramSocketImpl_leave;
+		Java_java_net_SocketInputStream_socketRead0;
+		Java_java_net_InetAddressImplFactory_isIPv6Supported;
+		Java_java_net_Inet4AddressImpl_getLocalHostName;
+		Java_java_net_Inet4AddressImpl_lookupAllHostAddr;
+		Java_java_net_Inet4AddressImpl_getHostByAddr;
+		Java_java_net_Inet4AddressImpl_isReachable0;
+		Java_java_net_Inet6AddressImpl_getLocalHostName;
+		Java_java_net_Inet6AddressImpl_lookupAllHostAddr;
+		Java_java_net_Inet6AddressImpl_getHostByAddr;
+		Java_java_net_Inet6AddressImpl_isReachable0;
+		Java_java_net_NetworkInterface_init;
+		Java_java_net_NetworkInterface_getByName0;
+		Java_java_net_NetworkInterface_getByIndex0;
+		Java_java_net_NetworkInterface_getByInetAddress0;
+		Java_java_net_NetworkInterface_getAll;
+		Java_java_net_NetworkInterface_isUp0;
+		Java_java_net_NetworkInterface_isLoopback0;
+		Java_java_net_NetworkInterface_isP2P0;
+		Java_java_net_NetworkInterface_supportsMulticast0;
+		Java_java_net_NetworkInterface_getMacAddr0;
+		Java_java_net_NetworkInterface_getMTU0;
+		Java_java_net_PlainDatagramSocketImpl_send;
+		Java_java_net_PlainSocketImpl_socketClose0;
+		Java_java_net_SocketOutputStream_init;
+		Java_java_net_PlainDatagramSocketImpl_peek;
+		Java_java_net_PlainDatagramSocketImpl_peekData;
+		Java_java_net_PlainSocketImpl_socketSetOption;
+		Java_java_net_PlainSocketImpl_socketSendUrgentData;
+		Java_java_net_PlainDatagramSocketImpl_datagramSocketCreate;
+		Java_java_net_PlainSocketImpl_socketGetOption;
+		Java_java_net_PlainDatagramSocketImpl_receive0;
+		Java_java_net_PlainDatagramSocketImpl_connect0;
+		Java_java_net_PlainDatagramSocketImpl_disconnect0;
+		Java_java_net_PlainDatagramSocketImpl_datagramSocketClose;
+		Java_java_net_PlainSocketImpl_initProto;
+		Java_java_net_PlainSocketImpl_socketBind;
+		Java_java_net_PlainSocketImpl_socketShutdown;
+		Java_java_net_SocketInputStream_init;
+		Java_java_net_PlainSocketImpl_socketConnect;
+		Java_java_net_PlainDatagramSocketImpl_getTimeToLive;
+		Java_java_net_PlainDatagramSocketImpl_setTimeToLive;
+		Java_sun_net_dns_ResolverConfigurationImpl_localDomain0;
+		Java_sun_net_dns_ResolverConfigurationImpl_fallbackDomain0;
+		Java_sun_net_sdp_SdpSupport_convert0;
+		Java_sun_net_sdp_SdpSupport_create0;
+		Java_sun_net_spi_DefaultProxySelector_init;
+		Java_sun_net_spi_DefaultProxySelector_getSystemProxy;
+		NET_AllocSockaddr;
+		NET_SockaddrToInetAddress;
+                NET_SockaddrEqualsInetAddress;
+		NET_InetAddressToSockaddr;
+		NET_GetPortFromSockaddr;
+		NET_SetSockOpt;
+		NET_GetSockOpt;
+		NET_Bind;
+		NET_MapSocketOption;
+		NET_Wait;
+                ipv6_available;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/Exportedfiles.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,46 @@
+#
+# Copyright (c) 2000, 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#   
+# These are the names of Java classes for which we will make .h files.
+#   
+   
+FILES_export = \
+    java/net/SocketOptions.java \
+    java/nio/MappedByteBuffer.java \
+    sun/nio/ch/DatagramChannelImpl.java \
+    sun/nio/ch/DatagramDispatcher.java \
+    sun/nio/ch/FileChannelImpl.java \
+    sun/nio/ch/FileDispatcherImpl.java \
+    sun/nio/ch/FileKey.java \
+    sun/nio/ch/FileLockImpl.java \
+    sun/nio/ch/IOStatus.java \
+    sun/nio/ch/IOUtil.java \
+    sun/nio/ch/Net.java \
+    sun/nio/ch/PollArrayWrapper.java \
+    sun/nio/ch/ServerSocketChannelImpl.java \
+    sun/nio/ch/SocketChannelImpl.java \
+    sun/nio/ch/SocketDispatcher.java \
+    java/io/FileDescriptor.java \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,37 @@
+#
+# Copyright (c) 2000, 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+        DatagramChannelImpl.c \
+        DatagramDispatcher.c \
+	FileChannelImpl.c \
+	FileDispatcherImpl.c \
+	FileKey.c \
+	IOUtil.c \
+        MappedByteBuffer.c \
+	Net.c \
+	ServerSocketChannelImpl.c \
+	SocketChannelImpl.c \
+	SocketDispatcher.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,442 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_src = \
+	java/nio/Bits.java \
+	java/nio/Buffer.java \
+	java/nio/ByteOrder.java \
+	java/nio/MappedByteBuffer.java \
+	java/nio/StringCharBuffer.java \
+	\
+	java/nio/channels/AsynchronousByteChannel.java \
+	java/nio/channels/AsynchronousChannel.java \
+	java/nio/channels/AsynchronousChannelGroup.java \
+	java/nio/channels/AsynchronousFileChannel.java \
+	java/nio/channels/AsynchronousServerSocketChannel.java \
+	java/nio/channels/AsynchronousSocketChannel.java \
+	java/nio/channels/ByteChannel.java \
+	java/nio/channels/Channel.java \
+	java/nio/channels/Channels.java \
+	java/nio/channels/CompletionHandler.java \
+	java/nio/channels/DatagramChannel.java \
+	java/nio/channels/FileChannel.java \
+	java/nio/channels/FileLock.java \
+	java/nio/channels/GatheringByteChannel.java \
+	java/nio/channels/InterruptibleChannel.java \
+	java/nio/channels/Pipe.java \
+	java/nio/channels/MembershipKey.java \
+	java/nio/channels/MulticastChannel.java \
+	java/nio/channels/NetworkChannel.java \
+	java/nio/channels/ReadableByteChannel.java \
+	java/nio/channels/ScatteringByteChannel.java \
+	java/nio/channels/SeekableByteChannel.java \
+	java/nio/channels/SelectableChannel.java \
+	java/nio/channels/Selector.java \
+	java/nio/channels/SelectionKey.java \
+	java/nio/channels/ServerSocketChannel.java \
+	java/nio/channels/SocketChannel.java \
+	java/nio/channels/WritableByteChannel.java \
+	\
+	java/nio/channels/spi/AbstractInterruptibleChannel.java \
+	java/nio/channels/spi/AbstractSelectableChannel.java \
+	java/nio/channels/spi/AbstractSelectionKey.java \
+	java/nio/channels/spi/AbstractSelector.java \
+	java/nio/channels/spi/AsynchronousChannelProvider.java \
+	java/nio/channels/spi/SelectorProvider.java \
+	\
+	java/nio/charset/Charset.java \
+	java/nio/charset/CoderResult.java \
+	java/nio/charset/CoderMalfunctionError.java \
+	java/nio/charset/CodingErrorAction.java \
+	java/nio/charset/MalformedInputException.java \
+	java/nio/charset/StandardCharsets.java \
+	java/nio/charset/UnmappableCharacterException.java \
+	\
+	java/nio/charset/spi/CharsetProvider.java \
+	\
+	java/nio/file/AccessDeniedException.java \
+	java/nio/file/AccessMode.java \
+	java/nio/file/AtomicMoveNotSupportedException.java \
+	java/nio/file/ClosedDirectoryStreamException.java \
+	java/nio/file/ClosedFileSystemException.java \
+	java/nio/file/ClosedWatchServiceException.java \
+	java/nio/file/CopyMoveHelper.java \
+	java/nio/file/CopyOption.java \
+	java/nio/file/DirectoryIteratorException.java \
+	java/nio/file/DirectoryNotEmptyException.java \
+	java/nio/file/DirectoryStream.java \
+	java/nio/file/FileAlreadyExistsException.java \
+	java/nio/file/FileStore.java \
+	java/nio/file/FileSystem.java \
+	java/nio/file/FileSystemAlreadyExistsException.java \
+	java/nio/file/FileSystemException.java \
+	java/nio/file/FileSystemNotFoundException.java \
+	java/nio/file/FileSystems.java \
+	java/nio/file/FileTreeWalker.java \
+	java/nio/file/FileVisitOption.java \
+	java/nio/file/FileVisitResult.java \
+	java/nio/file/FileVisitor.java \
+	java/nio/file/Files.java \
+	java/nio/file/InvalidPathException.java \
+	java/nio/file/LinkOption.java \
+	java/nio/file/LinkPermission.java \
+	java/nio/file/NoSuchFileException.java \
+	java/nio/file/NotDirectoryException.java \
+	java/nio/file/NotLinkException.java \
+	java/nio/file/OpenOption.java \
+	java/nio/file/Path.java \
+	java/nio/file/PathMatcher.java \
+	java/nio/file/Paths.java \
+	java/nio/file/ProviderMismatchException.java \
+	java/nio/file/ProviderNotFoundException.java \
+	java/nio/file/ReadOnlyFileSystemException.java \
+	java/nio/file/SecureDirectoryStream.java \
+	java/nio/file/SimpleFileVisitor.java \
+	java/nio/file/StandardCopyOption.java \
+	java/nio/file/StandardOpenOption.java \
+	java/nio/file/StandardWatchEventKinds.java \
+	java/nio/file/TempFileHelper.java \
+	java/nio/file/WatchEvent.java \
+	java/nio/file/WatchKey.java \
+	java/nio/file/WatchService.java \
+	java/nio/file/Watchable.java \
+	\
+	java/nio/file/attribute/AclEntry.java \
+	java/nio/file/attribute/AclEntryFlag.java \
+	java/nio/file/attribute/AclEntryPermission.java \
+	java/nio/file/attribute/AclEntryType.java \
+	java/nio/file/attribute/AclFileAttributeView.java \
+	java/nio/file/attribute/AttributeView.java \
+	java/nio/file/attribute/BasicFileAttributeView.java \
+	java/nio/file/attribute/BasicFileAttributes.java \
+	java/nio/file/attribute/DosFileAttributeView.java \
+	java/nio/file/attribute/DosFileAttributes.java \
+	java/nio/file/attribute/FileAttribute.java \
+	java/nio/file/attribute/FileAttributeView.java \
+	java/nio/file/attribute/FileOwnerAttributeView.java \
+	java/nio/file/attribute/FileStoreAttributeView.java \
+	java/nio/file/attribute/FileTime.java \
+	java/nio/file/attribute/GroupPrincipal.java \
+	java/nio/file/attribute/UserDefinedFileAttributeView.java \
+	java/nio/file/attribute/PosixFileAttributeView.java \
+	java/nio/file/attribute/PosixFileAttributes.java \
+	java/nio/file/attribute/PosixFilePermission.java \
+	java/nio/file/attribute/PosixFilePermissions.java \
+	java/nio/file/attribute/UserPrincipal.java \
+	java/nio/file/attribute/UserPrincipalLookupService.java \
+	java/nio/file/attribute/UserPrincipalNotFoundException.java \
+	\
+	java/nio/file/spi/FileSystemProvider.java \
+	java/nio/file/spi/FileTypeDetector.java \
+	\
+	com/sun/nio/file/ExtendedCopyOption.java \
+	com/sun/nio/file/ExtendedOpenOption.java \
+	com/sun/nio/file/ExtendedWatchEventModifier.java \
+	com/sun/nio/file/SensitivityWatchEventModifier.java \
+	\
+	sun/nio/ByteBuffered.java \
+	\
+        sun/nio/ch/AbstractPollArrayWrapper.java \
+	sun/nio/ch/AllocatedNativeObject.java \
+	sun/nio/ch/AsynchronousChannelGroupImpl.java \
+	sun/nio/ch/AsynchronousFileChannelImpl.java \
+	sun/nio/ch/AsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/AsynchronousSocketChannelImpl.java \
+	sun/nio/ch/Cancellable.java \
+	sun/nio/ch/ChannelInputStream.java \
+	sun/nio/ch/CompletedFuture.java \
+        sun/nio/ch/DatagramChannelImpl.java \
+        sun/nio/ch/DatagramDispatcher.java \
+	sun/nio/ch/DatagramSocketAdaptor.java \
+	sun/nio/ch/DefaultAsynchronousChannelProvider.java \
+        sun/nio/ch/DefaultSelectorProvider.java \
+	sun/nio/ch/DirectBuffer.java \
+	sun/nio/ch/ExtendedSocketOption.java \
+	sun/nio/ch/FileChannelImpl.java \
+	sun/nio/ch/FileDispatcher.java \
+	sun/nio/ch/FileDispatcherImpl.java \
+	sun/nio/ch/FileKey.java \
+	sun/nio/ch/FileLockImpl.java \
+	sun/nio/ch/FileLockTable.java \
+	sun/nio/ch/Groupable.java \
+	sun/nio/ch/Interruptible.java \
+	sun/nio/ch/Invoker.java \
+	sun/nio/ch/IOUtil.java \
+	sun/nio/ch/IOStatus.java \
+	sun/nio/ch/IOVecWrapper.java \
+	sun/nio/ch/MembershipKeyImpl.java \
+	sun/nio/ch/MembershipRegistry.java \
+	sun/nio/ch/NativeDispatcher.java \
+	sun/nio/ch/NativeObject.java \
+	sun/nio/ch/NativeThread.java \
+	sun/nio/ch/NativeThreadSet.java \
+	sun/nio/ch/Net.java \
+	sun/nio/ch/OptionKey.java \
+	sun/nio/ch/PendingFuture.java \
+	sun/nio/ch/PipeImpl.java \
+	sun/nio/ch/PollArrayWrapper.java \
+	sun/nio/ch/Reflect.java \
+	sun/nio/ch/Secrets.java \
+	sun/nio/ch/SelectionKeyImpl.java \
+	sun/nio/ch/SelectorImpl.java \
+	sun/nio/ch/SelectorProviderImpl.java \
+	sun/nio/ch/SelChImpl.java \
+	sun/nio/ch/ServerSocketAdaptor.java \
+	sun/nio/ch/ServerSocketChannelImpl.java \
+        sun/nio/ch/SinkChannelImpl.java \
+	sun/nio/ch/SocketAdaptor.java \
+	sun/nio/ch/SocketChannelImpl.java \
+	sun/nio/ch/SocketDispatcher.java \
+	sun/nio/ch/SocketOptionRegistry.java \
+        sun/nio/ch/SourceChannelImpl.java \
+	sun/nio/ch/ThreadPool.java \
+	sun/nio/ch/Util.java \
+	\
+	sun/nio/cs/AbstractCharsetProvider.java \
+	sun/nio/cs/ArrayDecoder.java \
+	sun/nio/cs/ArrayEncoder.java \
+	sun/nio/cs/FastCharsetProvider.java \
+	sun/nio/cs/HistoricallyNamedCharset.java \
+	sun/nio/cs/ISO_8859_1.java \
+	sun/nio/cs/SingleByte.java \
+	sun/nio/cs/SingleByteDecoder.java \
+	sun/nio/cs/SingleByteEncoder.java \
+	sun/nio/cs/StreamEncoder.java \
+	sun/nio/cs/StreamDecoder.java \
+	sun/nio/cs/Surrogate.java \
+	sun/nio/cs/ThreadLocalCoders.java \
+	sun/nio/cs/US_ASCII.java \
+	sun/nio/cs/UTF_16.java \
+	sun/nio/cs/UTF_16BE.java \
+	sun/nio/cs/UTF_16LE.java \
+	sun/nio/cs/UTF_8.java \
+	sun/nio/cs/CESU_8.java \
+	sun/nio/cs/Unicode.java \
+	sun/nio/cs/UnicodeDecoder.java \
+	sun/nio/cs/UnicodeEncoder.java \
+	sun/nio/cs/UTF_32.java \
+	sun/nio/cs/UTF_32BE.java \
+	sun/nio/cs/UTF_32LE.java \
+	sun/nio/cs/UTF_32BE_BOM.java \
+	sun/nio/cs/UTF_32LE_BOM.java \
+	sun/nio/cs/UTF_32Coder.java \
+	\
+	sun/nio/fs/AbstractAclFileAttributeView.java \
+	sun/nio/fs/AbstractBasicFileAttributeView.java \
+	sun/nio/fs/AbstractFileTypeDetector.java \
+        sun/nio/fs/AbstractFileSystemProvider.java \
+	sun/nio/fs/AbstractPath.java \
+	sun/nio/fs/AbstractPoller.java \
+	sun/nio/fs/AbstractUserDefinedFileAttributeView.java \
+	sun/nio/fs/AbstractWatchKey.java \
+	sun/nio/fs/AbstractWatchService.java \
+	sun/nio/fs/BasicFileAttributesHolder.java \
+	sun/nio/fs/Cancellable.java \
+	sun/nio/fs/DefaultFileSystemProvider.java \
+	sun/nio/fs/DefaultFileTypeDetector.java \
+	sun/nio/fs/DynamicFileAttributeView.java \
+	sun/nio/fs/FileOwnerAttributeViewImpl.java \
+	sun/nio/fs/Globs.java \
+	sun/nio/fs/NativeBuffer.java \
+	sun/nio/fs/NativeBuffers.java \
+	sun/nio/fs/Reflect.java \
+	sun/nio/fs/Util.java \
+	\
+	java/net/DatagramSocket.java \
+	java/net/DatagramSocketImpl.java \
+	java/net/PlainSocketImpl.java \
+	java/net/Socket.java \
+	java/net/ServerSocket.java \
+	java/net/SocketImpl.java \
+	java/net/Socket.java \
+	java/io/InputStreamReader.java \
+	java/io/OutputStreamWriter.java \
+	java/lang/String.java \
+	java/lang/StringCoding.java \
+	\
+	sun/misc/Cleaner.java \
+	sun/util/PreHashedMap.java
+
+# Generated coder classes
+#
+FILES_gen_coder = \
+	java/nio/charset/CharsetDecoder.java \
+	java/nio/charset/CharsetEncoder.java
+
+# Generated buffer classes
+#
+FILES_gen_buffer = \
+	java/nio/ByteBuffer.java \
+	java/nio/CharBuffer.java \
+	java/nio/ShortBuffer.java \
+	java/nio/IntBuffer.java \
+	java/nio/LongBuffer.java \
+	java/nio/FloatBuffer.java \
+	java/nio/DoubleBuffer.java \
+	\
+	java/nio/HeapByteBuffer.java \
+	java/nio/HeapByteBufferR.java \
+	java/nio/HeapCharBuffer.java \
+	java/nio/HeapCharBufferR.java \
+	java/nio/HeapShortBuffer.java \
+	java/nio/HeapShortBufferR.java \
+	java/nio/HeapIntBuffer.java \
+	java/nio/HeapIntBufferR.java \
+	java/nio/HeapLongBuffer.java \
+	java/nio/HeapLongBufferR.java \
+	java/nio/HeapFloatBuffer.java \
+	java/nio/HeapFloatBufferR.java \
+	java/nio/HeapDoubleBuffer.java \
+	java/nio/HeapDoubleBufferR.java \
+	\
+	java/nio/DirectByteBuffer.java \
+	java/nio/DirectByteBufferR.java \
+	\
+	java/nio/DirectCharBufferU.java \
+	java/nio/DirectCharBufferRU.java \
+	java/nio/DirectShortBufferU.java \
+	java/nio/DirectShortBufferRU.java \
+	java/nio/DirectIntBufferU.java \
+	java/nio/DirectIntBufferRU.java \
+	java/nio/DirectLongBufferU.java \
+	java/nio/DirectLongBufferRU.java \
+	java/nio/DirectFloatBufferU.java \
+	java/nio/DirectFloatBufferRU.java \
+	java/nio/DirectDoubleBufferU.java \
+	java/nio/DirectDoubleBufferRU.java \
+	\
+	java/nio/DirectCharBufferS.java \
+	java/nio/DirectCharBufferRS.java \
+	java/nio/DirectShortBufferS.java \
+	java/nio/DirectShortBufferRS.java \
+	java/nio/DirectIntBufferS.java \
+	java/nio/DirectIntBufferRS.java \
+	java/nio/DirectLongBufferS.java \
+	java/nio/DirectLongBufferRS.java \
+	java/nio/DirectFloatBufferS.java \
+	java/nio/DirectFloatBufferRS.java \
+	java/nio/DirectDoubleBufferS.java \
+	java/nio/DirectDoubleBufferRS.java \
+	\
+	java/nio/ByteBufferAsCharBufferB.java \
+	java/nio/ByteBufferAsCharBufferRB.java \
+	java/nio/ByteBufferAsShortBufferB.java \
+	java/nio/ByteBufferAsShortBufferRB.java \
+	java/nio/ByteBufferAsIntBufferB.java \
+	java/nio/ByteBufferAsIntBufferRB.java \
+	java/nio/ByteBufferAsLongBufferB.java \
+	java/nio/ByteBufferAsLongBufferRB.java \
+	java/nio/ByteBufferAsFloatBufferB.java \
+	java/nio/ByteBufferAsFloatBufferRB.java \
+	java/nio/ByteBufferAsDoubleBufferB.java \
+	java/nio/ByteBufferAsDoubleBufferRB.java \
+	\
+	java/nio/ByteBufferAsCharBufferL.java \
+	java/nio/ByteBufferAsCharBufferRL.java \
+	java/nio/ByteBufferAsShortBufferL.java \
+	java/nio/ByteBufferAsShortBufferRL.java \
+	java/nio/ByteBufferAsIntBufferL.java \
+	java/nio/ByteBufferAsIntBufferRL.java \
+	java/nio/ByteBufferAsLongBufferL.java \
+	java/nio/ByteBufferAsLongBufferRL.java \
+	java/nio/ByteBufferAsFloatBufferL.java \
+	java/nio/ByteBufferAsFloatBufferRL.java \
+	java/nio/ByteBufferAsDoubleBufferL.java \
+	java/nio/ByteBufferAsDoubleBufferRL.java
+
+# Generated exception classes
+#
+FILES_gen_ex = \
+	java/nio/BufferOverflowException.java \
+	java/nio/BufferUnderflowException.java \
+	java/nio/InvalidMarkException.java \
+	java/nio/ReadOnlyBufferException.java \
+	\
+	java/nio/channels/AcceptPendingException.java \
+	java/nio/channels/AlreadyBoundException.java \
+	java/nio/channels/AlreadyConnectedException.java \
+	java/nio/channels/AsynchronousCloseException.java \
+	java/nio/channels/CancelledKeyException.java \
+	java/nio/channels/ClosedByInterruptException.java \
+	java/nio/channels/ClosedChannelException.java \
+	java/nio/channels/ClosedSelectorException.java \
+	java/nio/channels/ConnectionPendingException.java \
+	java/nio/channels/FileLockInterruptionException.java \
+	java/nio/channels/IllegalBlockingModeException.java \
+	java/nio/channels/IllegalChannelGroupException.java \
+	java/nio/channels/IllegalSelectorException.java \
+	java/nio/channels/InterruptedByTimeoutException.java \
+	java/nio/channels/NoConnectionPendingException.java \
+	java/nio/channels/NonReadableChannelException.java \
+	java/nio/channels/NonWritableChannelException.java \
+	java/nio/channels/NotYetBoundException.java \
+	java/nio/channels/NotYetConnectedException.java \
+	java/nio/channels/OverlappingFileLockException.java \
+	java/nio/channels/ReadPendingException.java \
+	java/nio/channels/ShutdownChannelGroupException.java \
+	java/nio/channels/UnresolvedAddressException.java \
+	java/nio/channels/UnsupportedAddressTypeException.java \
+	java/nio/channels/WritePendingException.java \
+	\
+	java/nio/charset/CharacterCodingException.java \
+	java/nio/charset/IllegalCharsetNameException.java \
+	java/nio/charset/UnsupportedCharsetException.java
+
+FILES_gen_sbcs = \
+	sun/nio/cs/ISO_8859_2.java \
+	sun/nio/cs/ISO_8859_4.java \
+	sun/nio/cs/ISO_8859_5.java \
+	sun/nio/cs/ISO_8859_7.java \
+	sun/nio/cs/ISO_8859_9.java \
+	sun/nio/cs/ISO_8859_13.java \
+	sun/nio/cs/ISO_8859_15.java \
+	sun/nio/cs/IBM437.java \
+	sun/nio/cs/IBM737.java \
+	sun/nio/cs/IBM775.java \
+	sun/nio/cs/IBM850.java \
+	sun/nio/cs/IBM852.java \
+	sun/nio/cs/IBM855.java \
+	sun/nio/cs/IBM857.java \
+	sun/nio/cs/IBM858.java \
+	sun/nio/cs/IBM862.java \
+	sun/nio/cs/IBM866.java \
+	sun/nio/cs/IBM874.java \
+	sun/nio/cs/KOI8_R.java \
+	sun/nio/cs/KOI8_U.java \
+	sun/nio/cs/MS1250.java \
+	sun/nio/cs/MS1251.java \
+	sun/nio/cs/MS1252.java \
+	sun/nio/cs/MS1253.java \
+	sun/nio/cs/MS1254.java \
+	sun/nio/cs/MS1257.java
+
+FILES_gen_csp = sun/nio/cs/StandardCharsets.java
+
+FILES_gen_sor = sun/nio/ch/SocketOptionRegistry.java
+
+FILES_gen = $(FILES_gen_coder) $(FILES_gen_buffer) $(FILES_gen_ex) \
+    $(FILES_gen_csp) $(FILES_gen_sor)
+
+FILES_java = $(FILES_src) $(FILES_gen) $(FILES_gen_sbcs)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,994 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for java.nio
+#
+
+BUILDDIR = ../..
+LEGACY_BUILDDIR = ../../../make
+PACKAGE = java.nio
+LIBRARY = nio
+PRODUCT = java
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+NIO_SRC = $(SHARE_SRC)/classes/java/nio
+NIO_GEN = $(GENSRCDIR)/java/nio
+
+SNIO_SRC = $(SHARE_SRC)/classes/sun/nio
+SNIO_GEN = $(GENSRCDIR)/sun/nio
+
+#
+# Files to compile
+#
+
+include FILES_java.gmk
+include FILES_c.gmk
+include Exportedfiles.gmk
+
+ifeq ($(PLATFORM), solaris)
+FILES_java += \
+        sun/nio/ch/AbstractPollSelectorImpl.java \
+	sun/nio/ch/DevPollArrayWrapper.java \
+	sun/nio/ch/DevPollSelectorImpl.java \
+        sun/nio/ch/DevPollSelectorProvider.java \
+	sun/nio/ch/InheritedChannel.java \
+        sun/nio/ch/PollSelectorProvider.java \
+        sun/nio/ch/PollSelectorImpl.java \
+	sun/nio/ch/Port.java \
+	sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \
+	sun/nio/ch/SolarisAsynchronousChannelProvider.java \
+	sun/nio/ch/SolarisEventPort.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/PollingWatchService.java \
+	sun/nio/fs/SolarisAclFileAttributeView.java \
+	sun/nio/fs/SolarisFileStore.java \
+	sun/nio/fs/SolarisFileSystem.java \
+	sun/nio/fs/SolarisFileSystemProvider.java \
+	sun/nio/fs/SolarisUserDefinedFileAttributeView.java \
+	sun/nio/fs/SolarisNativeDispatcher.java \
+	sun/nio/fs/SolarisWatchService.java \
+	sun/nio/fs/UnixChannelFactory.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixDirectoryStream.java \
+	sun/nio/fs/UnixException.java \
+	sun/nio/fs/UnixFileAttributeViews.java \
+	sun/nio/fs/UnixFileAttributes.java \
+	sun/nio/fs/UnixFileKey.java \
+	sun/nio/fs/UnixFileModeAttribute.java \
+	sun/nio/fs/UnixFileStore.java \
+	sun/nio/fs/UnixFileStoreAttributes.java \
+	sun/nio/fs/UnixFileSystem.java \
+	sun/nio/fs/UnixFileSystemProvider.java \
+	sun/nio/fs/UnixMountEntry.java \
+	sun/nio/fs/UnixNativeDispatcher.java \
+	sun/nio/fs/UnixPath.java \
+	sun/nio/fs/UnixSecureDirectoryStream.java \
+	sun/nio/fs/UnixUriUtils.java \
+	sun/nio/fs/UnixUserPrincipals.java
+
+FILES_c += \
+        DevPollArrayWrapper.c \
+	InheritedChannel.c \
+	NativeThread.c \
+        PollArrayWrapper.c \
+	SolarisEventPort.c \
+	UnixAsynchronousServerSocketChannelImpl.c \
+	UnixAsynchronousSocketChannelImpl.c \
+	\
+	GnomeFileTypeDetector.c \
+	SolarisNativeDispatcher.c \
+	SolarisWatchService.c \
+	UnixCopyFile.c \
+	UnixNativeDispatcher.c
+
+FILES_export += \
+	sun/nio/ch/DevPollArrayWrapper.java \
+	sun/nio/ch/InheritedChannel.java \
+	sun/nio/ch/NativeThread.java \
+	sun/nio/ch/SolarisEventPort.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/SolarisNativeDispatcher.java \
+	sun/nio/fs/SolarisWatchService.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixNativeDispatcher.java
+
+FILES_gen += \
+	sun/nio/fs/SolarisConstants.java \
+	sun/nio/fs/UnixConstants.java
+endif # PLATFORM = solaris
+
+ifeq ($(PLATFORM), windows)
+FILES_java += \
+	sun/nio/ch/Iocp.java \
+	sun/nio/ch/PendingIoCache.java \
+	sun/nio/ch/WindowsAsynchronousChannelProvider.java \
+	sun/nio/ch/WindowsAsynchronousFileChannelImpl.java \
+	sun/nio/ch/WindowsAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java \
+        sun/nio/ch/WindowsSelectorImpl.java \
+        sun/nio/ch/WindowsSelectorProvider.java \
+	\
+	sun/nio/fs/RegistryFileTypeDetector.java \
+	sun/nio/fs/WindowsAclFileAttributeView.java \
+	sun/nio/fs/WindowsChannelFactory.java \
+	sun/nio/fs/WindowsConstants.java \
+	sun/nio/fs/WindowsDirectoryStream.java \
+	sun/nio/fs/WindowsException.java \
+	sun/nio/fs/WindowsFileAttributeViews.java \
+	sun/nio/fs/WindowsFileAttributes.java \
+	sun/nio/fs/WindowsFileCopy.java \
+	sun/nio/fs/WindowsFileStore.java \
+	sun/nio/fs/WindowsFileSystem.java \
+	sun/nio/fs/WindowsFileSystemProvider.java \
+	sun/nio/fs/WindowsLinkSupport.java \
+	sun/nio/fs/WindowsUserDefinedFileAttributeView.java \
+	sun/nio/fs/WindowsNativeDispatcher.java \
+	sun/nio/fs/WindowsPath.java \
+	sun/nio/fs/WindowsPathParser.java \
+	sun/nio/fs/WindowsPathType.java \
+	sun/nio/fs/WindowsSecurity.java \
+	sun/nio/fs/WindowsSecurityDescriptor.java \
+	sun/nio/fs/WindowsUriSupport.java \
+	sun/nio/fs/WindowsUserPrincipals.java \
+	sun/nio/fs/WindowsWatchService.java
+
+FILES_c += \
+	Iocp.c \
+	RegistryFileTypeDetector.c \
+	WindowsAsynchronousFileChannelImpl.c \
+	WindowsAsynchronousServerSocketChannelImpl.c \
+	WindowsAsynchronousSocketChannelImpl.c \
+	WindowsNativeDispatcher.c \
+        WindowsSelectorImpl.c
+
+FILES_export += \
+	sun/nio/ch/Iocp.java \
+	sun/nio/ch/WindowsAsynchronousFileChannelImpl.java \
+	sun/nio/ch/WindowsAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java \
+	sun/nio/ch/WindowsSelectorImpl.java \
+	sun/nio/fs/WindowsNativeDispatcher.java \
+	sun/nio/fs/RegistryFileTypeDetector.java
+endif # PLATFORM = windows
+
+ifeq ($(PLATFORM), linux)
+FILES_java += \
+        sun/nio/ch/AbstractPollSelectorImpl.java \
+	sun/nio/ch/EPoll.java \
+	sun/nio/ch/EPollArrayWrapper.java \
+	sun/nio/ch/EPollPort.java \
+	sun/nio/ch/EPollSelectorProvider.java \
+	sun/nio/ch/EPollSelectorImpl.java \
+	sun/nio/ch/InheritedChannel.java \
+	sun/nio/ch/LinuxAsynchronousChannelProvider.java \
+        sun/nio/ch/PollSelectorProvider.java \
+        sun/nio/ch/PollSelectorImpl.java \
+	sun/nio/ch/Port.java \
+	sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/LinuxDosFileAttributeView.java \
+	sun/nio/fs/LinuxFileStore.java \
+	sun/nio/fs/LinuxFileSystem.java \
+	sun/nio/fs/LinuxFileSystemProvider.java \
+	sun/nio/fs/LinuxUserDefinedFileAttributeView.java \
+	sun/nio/fs/LinuxNativeDispatcher.java \
+	sun/nio/fs/LinuxWatchService.java \
+	sun/nio/fs/UnixChannelFactory.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixDirectoryStream.java \
+	sun/nio/fs/UnixException.java \
+	sun/nio/fs/UnixFileAttributeViews.java \
+	sun/nio/fs/UnixFileAttributes.java \
+	sun/nio/fs/UnixFileKey.java \
+	sun/nio/fs/UnixFileModeAttribute.java \
+	sun/nio/fs/UnixFileStore.java \
+	sun/nio/fs/UnixFileStoreAttributes.java \
+	sun/nio/fs/UnixFileSystem.java \
+	sun/nio/fs/UnixFileSystemProvider.java \
+	sun/nio/fs/UnixMountEntry.java \
+	sun/nio/fs/UnixNativeDispatcher.java \
+	sun/nio/fs/UnixPath.java \
+	sun/nio/fs/UnixSecureDirectoryStream.java \
+	sun/nio/fs/UnixUriUtils.java \
+	sun/nio/fs/UnixUserPrincipals.java
+
+FILES_c += \
+	EPoll.c \
+	EPollArrayWrapper.c \
+	EPollPort.c \
+	InheritedChannel.c \
+	NativeThread.c \
+        PollArrayWrapper.c \
+	UnixAsynchronousServerSocketChannelImpl.c \
+	UnixAsynchronousSocketChannelImpl.c \
+	\
+	GnomeFileTypeDetector.c \
+	LinuxNativeDispatcher.c \
+	LinuxWatchService.c \
+	UnixCopyFile.c \
+	UnixNativeDispatcher.c
+
+FILES_export += \
+	sun/nio/ch/EPoll.java \
+        sun/nio/ch/EPollArrayWrapper.java \
+	sun/nio/ch/EPollPort.java \
+	sun/nio/ch/InheritedChannel.java \
+	sun/nio/ch/NativeThread.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/LinuxNativeDispatcher.java \
+	sun/nio/fs/LinuxWatchService.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixNativeDispatcher.java
+
+FILES_gen += \
+	sun/nio/fs/UnixConstants.java
+endif # PLATFORM = linux
+
+ifeq ($(PLATFORM), macosx)
+FILES_java += \
+        sun/nio/ch/AbstractPollSelectorImpl.java \
+	sun/nio/ch/BsdAsynchronousChannelProvider.java \
+	sun/nio/ch/InheritedChannel.java \
+	sun/nio/ch/KQueue.java \
+	sun/nio/ch/KQueuePort.java \
+        sun/nio/ch/PollSelectorProvider.java \
+        sun/nio/ch/PollSelectorImpl.java \
+	sun/nio/ch/Port.java \
+	sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/BsdFileStore.java \
+	sun/nio/fs/BsdFileSystem.java \
+	sun/nio/fs/BsdFileSystemProvider.java \
+	sun/nio/fs/BsdNativeDispatcher.java \
+	sun/nio/fs/PollingWatchService.java \
+	sun/nio/fs/UnixChannelFactory.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixDirectoryStream.java \
+	sun/nio/fs/UnixException.java \
+	sun/nio/fs/UnixFileAttributeViews.java \
+	sun/nio/fs/UnixFileAttributes.java \
+	sun/nio/fs/UnixFileKey.java \
+	sun/nio/fs/UnixFileModeAttribute.java \
+	sun/nio/fs/UnixFileStore.java \
+	sun/nio/fs/UnixFileStoreAttributes.java \
+	sun/nio/fs/UnixFileSystem.java \
+	sun/nio/fs/UnixFileSystemProvider.java \
+	sun/nio/fs/UnixMountEntry.java \
+	sun/nio/fs/UnixNativeDispatcher.java \
+	sun/nio/fs/UnixPath.java \
+	sun/nio/fs/UnixSecureDirectoryStream.java \
+	sun/nio/fs/UnixUriUtils.java \
+	sun/nio/fs/UnixUserPrincipals.java
+
+FILES_c += \
+	InheritedChannel.c \
+	NativeThread.c \
+        PollArrayWrapper.c \
+	UnixAsynchronousServerSocketChannelImpl.c \
+	UnixAsynchronousSocketChannelImpl.c \
+	\
+	GnomeFileTypeDetector.c \
+	BsdNativeDispatcher.c \
+	UnixCopyFile.c \
+	UnixNativeDispatcher.c \
+	\
+	KQueue.c \
+	KQueuePort.c
+
+FILES_export += \
+	sun/nio/ch/InheritedChannel.java \
+	sun/nio/ch/KQueue.java \
+	sun/nio/ch/KQueuePort.java \
+	sun/nio/ch/NativeThread.java \
+	sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \
+	sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \
+	\
+	sun/nio/fs/GnomeFileTypeDetector.java \
+	sun/nio/fs/BsdNativeDispatcher.java \
+	sun/nio/fs/UnixCopyFile.java \
+	sun/nio/fs/UnixNativeDispatcher.java
+
+FILES_gen += \
+	sun/nio/fs/UnixConstants.java
+endif # PLATFORM = bsd, macosx
+
+ifeq ($(PLATFORM), macosx)
+FILES_java += \
+    sun/nio/ch/KQueueSelectorProvider.java \
+    sun/nio/ch/KQueueSelectorImpl.java \
+    sun/nio/ch/KQueueArrayWrapper.java
+
+FILES_c += \
+    KQueueArrayWrapper.c
+
+vpath %.c $(call NativeSrcDirList,,native/sun/nio/fs)
+vpath %.c $(call NativeSrcDirList,,native/sun/nio/ch)
+
+else
+
+#
+# Find platform-specific C source files
+#
+vpath %.c $(PLATFORM_SRC)/native/sun/nio/fs
+vpath %.c $(PLATFORM_SRC)/native/sun/nio/ch
+vpath %.c $(SHARE_SRC)/native/sun/nio/ch
+
+endif # PLATFORM = macosx
+
+#
+# Various variables
+#
+
+JAVALIB = 		# Don't self-link
+
+#
+# Access to io_util.c and net_util.c
+#
+
+OTHER_INCLUDES += \
+  -I$(SHARE_SRC)/native/sun/nio/ch \
+  -I$(SHARE_SRC)/native/java/io \
+  -I$(SHARE_SRC)/native/java/net \
+  -I$(PLATFORM_SRC)/native/java/net \
+  -I$(CLASSHDRDIR)/../../../java.lang/java/CClassHeaders
+
+ifeq ($(PLATFORM),windows)
+  OTHER_LDLIBS += $(JVMLIB) ws2_32.lib \
+     -libpath:$(LIBDIR) java.lib \
+     $(OBJDIR)/../../../../sun/java.net/net/$(OBJDIRNAME)/net.lib \
+     $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/io_util.obj \
+     $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/FileDescriptor_md.obj
+endif
+ifeq ($(PLATFORM), linux)
+OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL)
+endif
+ifeq ($(PLATFORM), macosx)
+OTHER_LDLIBS += -L$(LIBDIR) -ljava -lnet -pthread
+endif
+ifeq ($(PLATFORM), solaris)
+OTHER_LDLIBS += $(JVMLIB) $(LIBSOCKET) -lposix4 $(LIBDL) -lsendfile \
+		-L$(LIBDIR)/$(LIBARCH) -ljava -lnet
+endif # PLATFORM
+
+#
+# Rules
+#
+
+build: sources
+
+clean clobber::
+	$(RM) -r $(NIO_GEN) $(SNIO_GEN)
+	$(RM) -r $(CLASSDESTDIR)/java/nio
+	$(RM) -r $(CLASSDESTDIR)/sun/nio
+
+ifeq ($(PLATFORM), solaris)
+FILES_m = mapfile-solaris
+endif
+ifeq ($(PLATFORM), linux)
+FILES_m = mapfile-linux
+endif
+ifeq ($(PLATFORM), macosx)
+FILES_m = mapfile-bsd
+endif
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Generate source files
+#
+
+FILES_genout = $(FILES_gen:%.java=$(GENSRCDIR)/%.java)
+
+BUF_SRC=$(NIO_SRC)
+CH_SRC=$(NIO_SRC)/channels
+CS_SRC=$(NIO_SRC)/charset
+SCH_SRC=$(SNIO_SRC)/ch
+SCS_SRC=$(SNIO_SRC)/cs
+SFS_SRC=$(SNIO_SRC)/fs
+
+# Template files
+HEAP_X_BUF_TEMPLATE=$(BUF_SRC)/Heap-X-Buffer.java.template
+BYTE_X_BUF_TEMPLATE=$(BUF_SRC)/ByteBufferAs-X-Buffer.java.template
+X_BUF_TEMPLATE=$(BUF_SRC)/X-Buffer.java.template
+X_BUF_BIN_TEMPLATE=$(BUF_SRC)/X-Buffer-bin.java.template
+DIRECT_X_BUF_TEMPLATE=$(BUF_SRC)/Direct-X-Buffer.java.template
+DIRECT_X_BUF_BIN_TEMPLATE=$(BUF_SRC)/Direct-X-Buffer-bin.java.template
+CHARSET_X_CODER_TEMPLATE=$(CS_SRC)/Charset-X-Coder.java.template
+
+BUF_GEN=$(NIO_GEN)
+CH_GEN=$(NIO_GEN)/channels
+CS_GEN=$(NIO_GEN)/charset
+SCH_GEN=$(SNIO_GEN)/ch
+SCS_GEN=$(SNIO_GEN)/cs
+SFS_GEN=$(SNIO_GEN)/fs
+
+FILES_gensbcs_out = $(FILES_gen_sbcs:%.java=$(GENSRCDIR)/%.java)
+
+sources: $(SPP_JARFILE) $(FILES_genout) $(FILES_gensbcs_out)
+
+#
+# Generated buffer classes
+#
+
+GEN_BUFFER_SH = genBuffer.sh
+
+GEN_BUFFER_CMD = SPP="$(TOOL_SPP)" NAWK="$(NAWK)" SED="$(SED)" SH="$(SH)" \
+                 $(SH) $(GEN_BUFFER_SH)
+
+# Public abstract buffer classes
+#
+$(BUF_GEN)/ByteBuffer.java: $(X_BUF_TEMPLATE) \
+			    $(X_BUF_BIN_TEMPLATE) \
+			    $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/CharBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ShortBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/IntBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/LongBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/FloatBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DoubleBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Buffers whose contents are heap-allocated
+# 
+$(BUF_GEN)/HeapByteBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=byte SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapByteBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=byte RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapCharBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapCharBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapShortBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapShortBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapIntBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapIntBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapLongBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapLongBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapFloatBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapFloatBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapDoubleBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/HeapDoubleBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Direct byte buffer
+# 
+$(BUF_GEN)/DirectByteBuffer.java: $(DIRECT_X_BUF_TEMPLATE) \
+				  $(DIRECT_X_BUF_TEMPLATE) \
+				  $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectByteBuffer%.java: $(DIRECT_X_BUF_TEMPLATE) \
+				   $(DIRECT_X_BUF_TEMPLATE) \
+				   $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=byte RW=$* BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Unswapped views of direct byte buffers
+#
+$(BUF_GEN)/DirectCharBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectCharBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectShortBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectShortBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectIntBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectIntBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectLongBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectLongBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectFloatBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectFloatBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectDoubleBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectDoubleBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Swapped views of direct byte buffers
+#
+$(BUF_GEN)/DirectCharBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectCharBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectShortBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectShortBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectIntBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectIntBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectLongBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectLongBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectFloatBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectFloatBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectDoubleBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/DirectDoubleBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Big-endian views of byte buffers
+#
+$(BUF_GEN)/ByteBufferAsCharBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsCharBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsShortBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsShortBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsIntBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsIntBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsLongBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsLongBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsFloatBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsFloatBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsDoubleBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsDoubleBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+# Little-endian views of byte buffers
+#
+$(BUF_GEN)/ByteBufferAsCharBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsCharBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=char RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsShortBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsShortBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=short RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsIntBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsIntBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=int RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsLongBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsLongBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=long RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsFloatBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsFloatBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=float RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsDoubleBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+$(BUF_GEN)/ByteBufferAsDoubleBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	TYPE=double RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
+	$(MV) $@.temp $@
+
+#
+# Generated coder classes
+#
+
+GEN_CODER_SH = genCoder.sh
+
+GEN_CODER_CMD = SPP="$(TOOL_SPP)" SED="$(SED)" NAWK="$(NAWK)" SH="$(SH)" $(SH) $(GEN_CODER_SH)
+
+$(CS_GEN)/CharsetDecoder.java: $(CHARSET_X_CODER_TEMPLATE) $(GEN_CODER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	$(GEN_CODER_CMD) decoder $< $@.temp
+	$(MV) $@.temp $@
+
+$(CS_GEN)/CharsetEncoder.java: $(CHARSET_X_CODER_TEMPLATE) $(GEN_CODER_SH)
+	$(prep-target)
+	@$(RM) $@.temp
+	$(GEN_CODER_CMD) encoder $< $@.temp
+	$(MV) $@.temp $@
+
+#
+# Generated exception classes
+#
+
+GEN_EX_SH = genExceptions.sh
+ 
+GEN_EX_CMD = NAWK="$(NAWK)" SH="$(SH)" $(SH) $(GEN_EX_SH)
+
+$(CH_GEN)/%Exception.java: genExceptions.sh $(CH_SRC)/exceptions
+	$(prep-target)
+	@$(RM) $@.temp
+	$(GEN_EX_CMD) $(CH_SRC)/exceptions $(CH_GEN)
+
+$(CS_GEN)/%Exception.java: genExceptions.sh $(CS_SRC)/exceptions
+	$(prep-target)
+	@$(RM) $@.temp
+	$(GEN_EX_CMD) $(CS_SRC)/exceptions $(CS_GEN)
+
+$(BUF_GEN)/%Exception.java: genExceptions.sh $(BUF_SRC)/exceptions
+	$(prep-target)
+	@$(RM) $@.temp
+	$(GEN_EX_CMD) $(BUF_SRC)/exceptions $(BUF_GEN)
+
+#
+# Generated charset-provider classes
+#
+
+$(SCS_GEN)/StandardCharsets.java: genCharsetProvider.sh \
+    $(HASHER_JARFILE) $(SCS_SRC)/standard-charsets
+	$(prep-target)
+	@$(RM) $@.temp
+	NAWK="$(NAWK)" TEMPDIR="$(TEMPDIR)" SH="$(SH)" \
+	  HASHER="$(TOOL_HASHER)" \
+	  $(SH) -e genCharsetProvider.sh $(SCS_SRC)/standard-charsets $(SCS_GEN)
+
+#
+# Generated channel implementation classes.
+# C source is compiled in TEMPDIR to avoid turds left by Windows compilers.
+#
+
+GENSOR_SRC = $(SHARE_SRC)/native/sun/nio/ch/genSocketOptionRegistry.c
+
+GENSOR_EXE = $(TEMPDIR)/genSocketOptionRegistry$(EXE_SUFFIX)
+
+SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSOR_SRC) | \
+	$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') 
+
+$(TEMPDIR)/$(GENSOR_SRC) : $(GENSOR_SRC)
+	$(install-file)
+
+ifndef NIO_CC
+  ifeq ($(PLATFORM), macosx)
+    NIO_CC=$(HOST_CC)
+  else
+    NIO_CC=$(CC)
+  endif
+endif
+
+$(GENSOR_EXE) : $(TEMPDIR)/$(GENSOR_SRC)
+	$(prep-target)
+	($(CD) $(TEMPDIR); $(NIO_CC) $(CPPFLAGS) $(LDDFLAGS) \
+	   -o genSocketOptionRegistry$(EXE_SUFFIX) $(GENSOR_SRC))
+
+ifdef NIO_PLATFORM_CLASSES_ROOT_DIR
+$(SCH_GEN)/SocketOptionRegistry.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/ch/SocketOptionRegistry-$(PLATFORM)-$(ARCH).java
+	$(prep-target)
+	$(CP) $< $@
+else 
+$(SCH_GEN)/SocketOptionRegistry.java: $(GENSOR_EXE)
+	$(prep-target)
+	NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@
+	$(GENSOR_EXE) >> $@
+endif
+#
+# Generated sun.nio.cs SingleByte classes
+#
+GENCSSRC = $(LEGACY_BUILDDIR)/tools/CharsetMapping
+
+$(FILES_gensbcs_out): $(GENCSSRC)/SingleByte-X.java.template $(GENCSSRC)/sbcs
+	@$(prep-target)
+	$(TOOL_CHARSETMAPPING) $(GENCSSRC) $(SCS_GEN) sbcs
+
+# 
+# Generated file system implementation classes (Unix only)
+#
+
+GENUC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genUnixConstants.c
+
+GENUC_OBJ = $(TEMPDIR)/genUnixConstants.o
+GENUC_EXE = $(TEMPDIR)/genUnixConstants
+
+GENUC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENUC_SRC) | \
+	$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
+
+$(GENUC_EXE) : $(GENUC_SRC)
+	$(prep-target)
+	$(NIO_CC) $(CPPFLAGS) -c -o $(GENUC_OBJ) $(GENUC_SRC)
+	$(NIO_CC) $(CPPFLAGS) -o $@ $(GENUC_OBJ)
+
+ifdef NIO_PLATFORM_CLASSES_ROOT_DIR
+$(SFS_GEN)/UnixConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/UnixConstants-$(PLATFORM)-$(ARCH).java
+	$(prep-target)
+	$(CP) $< $@
+else
+$(SFS_GEN)/UnixConstants.java: $(GENUC_EXE)
+	$(prep-target)
+	NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENUC_COPYRIGHT_YEARS)" > $@
+	$(GENUC_EXE) >> $@
+endif
+
+GENSC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genSolarisConstants.c
+
+GENSC_OBJ = $(TEMPDIR)/genSolarisConstants.o
+GENSC_EXE = $(TEMPDIR)/genSolarisConstants
+
+GENSC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSC_SRC) | \
+	$(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
+
+$(GENSC_EXE) : $(GENSC_SRC)
+	$(prep-target)
+	$(NIO_CC) $(CPPFLAGS) -c -o $(GENSC_OBJ) $(GENSC_SRC)
+	$(NIO_CC) $(CPPFLAGS) -o $@ $(GENSC_OBJ)
+
+ifdef NIO_PLATFORM_CLASSES_ROOT_DIR
+$(SFS_GEN)/SolarisConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/SolarisConstants-$(PLATFORM)-$(ARCH).java
+	$(prep-target)
+	$(CP) $< $@
+else
+$(SFS_GEN)/SolarisConstants.java: $(GENSC_EXE)
+	$(prep-target)
+	NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENSC_COPYRIGHT_YEARS)" > $@
+	$(GENSC_EXE) >> $@
+endif
+
+.PHONY: sources 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/addNotices.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+#! /bin/sh
+#
+# Copyright (c) 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Parse the first contiguous comment block in this script and generate
+# a java comment block.  If this script is invoked with a copyright 
+# year/year range, the java comment block will contain a Sun copyright.
+
+COPYRIGHT_YEARS="$1"
+
+cat <<__END__
+/*
+__END__
+
+if [ "x$COPYRIGHT_YEARS" != x ]; then
+  cat <<__END__
+ * Copyright (c) $COPYRIGHT_YEARS Oracle and/or its affiliates. All rights reserved.
+__END__
+fi
+
+$NAWK ' /^#.*Copyright.*Oracle/ { next }
+        /^#([^!]|$)/ { sub(/^#/, " *"); print }
+        /^$/ { print " */"; exit } ' $0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/genBuffer.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,173 @@
+#! /bin/sh
+
+#
+# Copyright (c) 2000, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Generate concrete buffer classes
+
+# Required environment variables
+#   NAWK SED SPP    To invoke tools
+#   TYPE            Primitive type
+#   SRC             Source file
+#   DST             Destination file
+#
+# Optional environment variables
+#   RW              Mutability: R(ead only), W(ritable)
+#   BO              Byte order: B(ig), L(ittle), S(wapped), U(nswapped)
+#   BIN             Defined => generate binary-data access methods
+
+type=$TYPE
+rw=$RW
+rwkey=XX
+
+case $type in
+  char)  fulltype=character;;
+  int)   fulltype=integer;;
+  *)     fulltype=$type;;
+esac
+
+case $type in
+  byte)           LBPV=0;;
+  char | short)   LBPV=1;;
+  int | float)    LBPV=2;;
+  long | double)  LBPV=3;;
+esac
+
+case $type in 
+  float|double) floatingPointOrIntegralType=floatingPointType;;
+  *)            floatingPointOrIntegralType=integralType;;
+esac
+
+typesAndBits() {
+
+  type="$1"; BO="$2"
+  memtype=$type; swaptype=$type; frombits=; tobits=
+
+  case $type in
+    float)   memtype=int
+             if [ x$BO != xU ]; then
+	       swaptype=int
+	       fromBits=Float.intBitsToFloat
+	       toBits=Float.floatToRawIntBits
+	     fi;;
+    double)  memtype=long
+             if [ x$BO != xU ]; then
+	       swaptype=long
+	       fromBits=Double.longBitsToDouble
+	       toBits=Double.doubleToRawLongBits
+	     fi;;
+  esac
+
+  echo memtype=$memtype swaptype=$swaptype fromBits=$fromBits toBits=$toBits
+
+  echo $type $fulltype $memtype $swaptype \
+  | $NAWK '{ type = $1; fulltype = $2; memtype = $3; swaptype = $4;
+	     x = substr(type, 1, 1);
+	     Type = toupper(x) substr(type, 2);
+	     Fulltype = toupper(x) substr(fulltype, 2);
+	     Memtype = toupper(substr(memtype, 1, 1)) substr(memtype, 2);
+	     Swaptype = toupper(substr(swaptype, 1, 1)) substr(swaptype, 2);
+	     printf("Type=%s x=%s Fulltype=%s Memtype=%s Swaptype=%s ",
+		    Type, x, Fulltype, Memtype, Swaptype); }'
+
+  echo "swap=`if [ x$BO = xS ]; then echo Bits.swap; fi`"
+
+}
+
+eval `typesAndBits $type $BO`
+
+a=`if [ $type = int ]; then echo an; else echo a; fi`
+A=`if [ $type = int ]; then echo An; else echo A; fi`
+
+if [ "x$rw" = xR ]; then rwkey=ro; else rwkey=rw; fi
+
+set -e
+
+$SPP <$SRC >$DST \
+  -K$type \
+  -K$floatingPointOrIntegralType \
+  -Dtype=$type \
+  -DType=$Type \
+  -Dfulltype=$fulltype \
+  -DFulltype=$Fulltype \
+  -Dx=$x \
+  -Dmemtype=$memtype \
+  -DMemtype=$Memtype \
+  -DSwaptype=$Swaptype \
+  -DfromBits=$fromBits \
+  -DtoBits=$toBits \
+  -DLG_BYTES_PER_VALUE=$LBPV \
+  -DBYTES_PER_VALUE="(1 << $LBPV)" \
+  -DBO=$BO \
+  -Dswap=$swap \
+  -DRW=$rw \
+  -K$rwkey \
+  -Da=$a \
+  -DA=$A \
+  -Kbo$BO
+
+if [ $BIN ]; then
+
+  genBinOps() {
+    type="$1"
+    Type=`echo $1 | $NAWK '{ print toupper(substr($1, 1, 1)) substr($1, 2) }'`
+    fulltype="$2"
+    LBPV="$3"
+    nbytes="$4"
+    nbytesButOne="$5"
+    a=`if [ $type = int ]; then echo an; else echo a; fi`
+    src=$6
+    eval `typesAndBits $type`
+    $SPP <$src \
+      -Dtype=$type \
+      -DType=$Type \
+      -Dfulltype=$fulltype \
+      -Dmemtype=$memtype \
+      -DMemtype=$Memtype \
+      -DfromBits=$fromBits \
+      -DtoBits=$toBits \
+      -DLG_BYTES_PER_VALUE=$LBPV \
+      -DBYTES_PER_VALUE="(1 << $LBPV)" \
+      -Dnbytes=$nbytes \
+      -DnbytesButOne=$nbytesButOne \
+      -DRW=$rw \
+      -K$rwkey \
+      -Da=$a \
+      -be
+  }
+
+  mv $DST $DST.tmp
+  sed -e '/#BIN/,$d' <$DST.tmp >$DST
+  rm -f $DST.tmp
+  binops=`dirname $SRC`/`basename $SRC .java.template`-bin.java.template
+  genBinOps char character 1 two one $binops >>$DST
+  genBinOps short short 1 two one $binops >>$DST
+  genBinOps int integer 2 four three $binops >>$DST
+  genBinOps long long 3 eight seven $binops >>$DST
+  genBinOps float float 2 four three $binops >>$DST
+  genBinOps double double 3 eight seven $binops >>$DST
+  echo '}' >>$DST
+
+fi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/genCharsetProvider.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,131 @@
+#! /bin/sh
+
+#
+# Copyright (c) 2004, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Generate a charset provider class
+
+# Required environment variables
+#   NAWK	awk tool
+#   TEMPDIR      temporary directory
+#   HASHER	Hasher program
+
+SPEC=$1; shift
+DST=$1; shift
+
+eval `$NAWK <$SPEC '
+  /^[ \t]*copyright / { printf "COPYRIGHT_YEARS=\"%s %s\"\n", $2, $3; }
+  /^[ \t]*package / { printf "PKG=%s\n", $2; }
+  /^[ \t]*class / { printf "CLASS=%s\n", $2; }
+'`
+
+OUT=$DST/$CLASS.java
+echo '-->' $OUT
+
+
+# Header
+#
+
+$SH ./addNotices.sh "$COPYRIGHT_YEARS" > $OUT
+
+cat <<__END__ >>$OUT
+
+// -- This file was mechanically generated: Do not edit! -- //
+
+package $PKG;
+
+import java.nio.charset.*;
+
+
+public class $CLASS
+    extends FastCharsetProvider
+{
+
+__END__
+
+
+# Alias tables
+#
+$NAWK <$SPEC >>$OUT '
+  BEGIN { n = 1; m = 1; }
+
+  /^[ \t]*charset / {
+    csn = $2; cln = $3;
+    lcsn = tolower(csn);
+    lcsns[n++] = lcsn;
+    csns[lcsn] = csn;
+    classMap[lcsn] = cln;
+    if (n > 2)
+      printf "    };\n\n";
+    printf "    static final String[] aliases_%s = new String[] {\n", cln;
+  }
+
+  /^[ \t]*alias / {
+    acsns[m++] = tolower($2);
+    aliasMap[tolower($2)] = lcsn; 
+    printf "        \"%s\",\n", $2;
+  }
+
+  END {
+    printf "    };\n\n";
+  }
+'
+
+
+# Prehashed alias and class maps
+#
+$NAWK <$SPEC >$TEMPDIR/aliases '
+  /^[ \t]*charset / {
+    csn = $2;
+    lcsn = tolower(csn);
+  }
+  /^[ \t]*alias / {
+    an = tolower($2);
+    printf "%-20s \"%s\"\n", an, lcsn;
+  }
+'
+
+$NAWK <$SPEC >$TEMPDIR/classes '
+  /^[ \t]*charset / {
+    csn = $2; cln = $3;
+    lcsn = tolower(csn);
+    printf "%-20s \"%s\"\n", lcsn, cln;
+  }
+'
+
+${HASHER} -i Aliases <$TEMPDIR/aliases >>$OUT
+${HASHER} -i Classes <$TEMPDIR/classes >>$OUT
+${HASHER} -i -e Cache -t Charset <$TEMPDIR/classes >>$OUT
+
+
+# Constructor
+#
+cat <<__END__ >>$OUT
+    public $CLASS() {
+        super("$PKG", new Aliases(), new Classes(), new Cache());
+    }
+
+}
+__END__
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/genCoder.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,99 @@
+#! /bin/sh
+
+#
+# Copyright (c) 2000, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Generate charset coder and decoder classes
+
+# Environment variables required from make: SED SPP
+
+what=$1
+SRC=$2
+DST=$3
+
+if [ x$what = xdecoder ]; then
+
+  echo '  '$SRC '--('$what')-->' $DST
+  $SPP <$SRC >$DST \
+    -K$what \
+    -DA='A' \
+    -Da='a' \
+    -DCode='Decode' \
+    -Dcode='decode' \
+    -DitypesPhrase='bytes in a specific charset' \
+    -DotypesPhrase='sixteen-bit Unicode characters' \
+    -Ditype='byte' \
+    -Dotype='character' \
+    -DItype='Byte' \
+    -DOtype='Char' \
+    -Dcoder='decoder' \
+    -DCoder='Decoder' \
+    -Dcoding='decoding' \
+    -DOtherCoder='Encoder' \
+    -DreplTypeName='string' \
+    -DdefaultRepl='"\\uFFFD"' \
+    -DdefaultReplName='<tt>"\&#92;uFFFD"<\/tt>' \
+    -DreplType='String' \
+    -DreplFQType='java.lang.String' \
+    -DreplLength='length()' \
+    -DItypesPerOtype='CharsPerByte' \
+    -DnotLegal='not legal for this charset' \
+    -Dotypes-per-itype='chars-per-byte' \
+    -DoutSequence='Unicode character'
+
+elif [ x$what = xencoder ]; then
+
+  echo '  '$SRC '--('$what')-->' $DST
+  $SPP <$SRC >$DST \
+    -K$what \
+    -DA='An' \
+    -Da='an' \
+    -DCode='Encode' \
+    -Dcode='encode' \
+    -DitypesPhrase='sixteen-bit Unicode characters' \
+    -DotypesPhrase='bytes in a specific charset' \
+    -Ditype='character' \
+    -Dotype='byte' \
+    -DItype='Char' \
+    -DOtype='Byte' \
+    -Dcoder='encoder' \
+    -DCoder='Encoder' \
+    -Dcoding='encoding' \
+    -DOtherCoder='Decoder' \
+    -DreplTypeName='byte array' \
+    -DdefaultRepl='new byte[] { (byte)'"'"\\?"'"' }' \
+    -DdefaultReplName='<tt>{<\/tt>\&nbsp;<tt>(byte)'"'"\\?"'"'<\/tt>\&nbsp;<tt>}<\/tt>' \
+    -DreplType='byte[]' \
+    -DreplFQType='byte[]' \
+    -DreplLength='length' \
+    -DItypesPerOtype='BytesPerChar' \
+    -DnotLegal='not a legal sixteen-bit Unicode sequence' \
+    -Dotypes-per-itype='bytes-per-char' \
+    -DoutSequence='byte sequence in the given charset'
+
+else
+  echo Illegal coder type: $what
+  exit 1
+fi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/genExceptions.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,110 @@
+#! /bin/sh
+#
+# Copyright (c) 2000, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Generate exception classes
+
+SPEC=$1
+DST=$2
+
+gen() {
+  ID=$1
+  WHAT=$2
+  SVUID=$3 
+  ARG_TYPE=$4
+  ARG_ID=$5
+  ARG_PROP=$6
+  ARG_PHRASE=$7
+  ARG_PARAM="$ARG_TYPE$ $ARG_ID"
+  echo '-->' $DST/$ID.java
+  out=$DST/${ID}.java
+
+  $SH ./addNotices.sh "$COPYRIGHT_YEARS" > $out
+
+cat >>$out <<__END__
+
+// -- This file was mechanically generated: Do not edit! -- //
+
+package $PACKAGE;
+
+
+/**$WHAT
+ *
+ * @since $SINCE
+ */
+
+public `if [ ${ABSTRACT:-0} = 1 ];
+        then echo 'abstract '; fi`class $ID
+    extends ${SUPER}
+{
+
+    private static final long serialVersionUID = $SVUID;
+__END__
+
+  if [ $ARG_ID ]; then
+
+    cat >>$out <<__END__
+
+    private $ARG_TYPE $ARG_ID;
+
+    /**
+     * Constructs an instance of this class. </p>
+     *
+     * @param  $ARG_ID
+     *         The $ARG_PHRASE
+     */
+    public $ID($ARG_TYPE $ARG_ID) {
+        super(String.valueOf($ARG_ID));
+	this.$ARG_ID = $ARG_ID;
+    }
+
+    /**
+     * Retrieves the $ARG_PHRASE. </p>
+     *
+     * @return  The $ARG_PHRASE
+     */
+    public $ARG_TYPE get$ARG_PROP() {
+        return $ARG_ID;
+    }
+
+}
+__END__
+
+  else
+
+    cat >>$out <<__END__
+
+    /**
+     * Constructs an instance of this class.
+     */
+    public $ID() { }
+
+}
+__END__
+
+  fi
+}
+
+. $SPEC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/mapfile-bsd	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,179 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+SUNWprivate_1.1 {
+	global:
+                Java_java_nio_MappedByteBuffer_force0;
+                Java_java_nio_MappedByteBuffer_isLoaded0;
+                Java_java_nio_MappedByteBuffer_load0;
+                Java_sun_nio_ch_DatagramChannelImpl_disconnect0;
+                Java_sun_nio_ch_DatagramChannelImpl_initIDs;
+                Java_sun_nio_ch_DatagramChannelImpl_receive0;
+                Java_sun_nio_ch_DatagramChannelImpl_send0;
+                Java_sun_nio_ch_DatagramDispatcher_read0;
+                Java_sun_nio_ch_DatagramDispatcher_readv0;
+                Java_sun_nio_ch_DatagramDispatcher_write0;
+                Java_sun_nio_ch_DatagramDispatcher_writev0;
+                Java_sun_nio_ch_FileChannelImpl_close0;
+                Java_sun_nio_ch_FileChannelImpl_initIDs;
+                Java_sun_nio_ch_FileChannelImpl_map0;
+                Java_sun_nio_ch_FileChannelImpl_position0;
+                Java_sun_nio_ch_FileChannelImpl_transferTo0;
+                Java_sun_nio_ch_FileChannelImpl_unmap0;
+                Java_sun_nio_ch_FileDispatcherImpl_close0;
+                Java_sun_nio_ch_FileDispatcherImpl_closeIntFD;
+		Java_sun_nio_ch_FileDispatcherImpl_force0;
+                Java_sun_nio_ch_FileDispatcherImpl_init;
+		Java_sun_nio_ch_FileDispatcherImpl_lock0;
+                Java_sun_nio_ch_FileDispatcherImpl_preClose0;
+                Java_sun_nio_ch_FileDispatcherImpl_pread0;
+                Java_sun_nio_ch_FileDispatcherImpl_pwrite0;
+                Java_sun_nio_ch_FileDispatcherImpl_read0;
+                Java_sun_nio_ch_FileDispatcherImpl_readv0;
+		Java_sun_nio_ch_FileDispatcherImpl_release0;
+		Java_sun_nio_ch_FileDispatcherImpl_size0;
+		Java_sun_nio_ch_FileDispatcherImpl_truncate0;
+                Java_sun_nio_ch_FileDispatcherImpl_write0;
+                Java_sun_nio_ch_FileDispatcherImpl_writev0;
+                Java_sun_nio_ch_FileKey_init;
+                Java_sun_nio_ch_FileKey_initIDs;
+		Java_sun_nio_ch_InheritedChannel_close0;
+		Java_sun_nio_ch_InheritedChannel_dup;
+		Java_sun_nio_ch_InheritedChannel_dup2;
+		Java_sun_nio_ch_InheritedChannel_open0;
+		Java_sun_nio_ch_InheritedChannel_peerAddress0;
+		Java_sun_nio_ch_InheritedChannel_peerPort0;
+		Java_sun_nio_ch_InheritedChannel_soType0;
+                Java_sun_nio_ch_IOUtil_configureBlocking;
+                Java_sun_nio_ch_IOUtil_drain;
+                Java_sun_nio_ch_IOUtil_fdVal;
+                Java_sun_nio_ch_IOUtil_initIDs;
+                Java_sun_nio_ch_IOUtil_makePipe;
+                Java_sun_nio_ch_IOUtil_randomBytes;
+                Java_sun_nio_ch_IOUtil_setfdVal;
+		Java_sun_nio_ch_KQueue_kqueue;
+		Java_sun_nio_ch_KQueue_keventRegister;
+		Java_sun_nio_ch_KQueue_keventPoll;
+		Java_sun_nio_ch_KQueue_keventSize;
+		Java_sun_nio_ch_KQueue_identOffset;
+		Java_sun_nio_ch_KQueue_filterOffset;
+		Java_sun_nio_ch_KQueue_flagsOffset;
+		Java_sun_nio_ch_KQueuePort_socketpair;
+		Java_sun_nio_ch_KQueuePort_interrupt;
+		Java_sun_nio_ch_KQueuePort_drain1;
+		Java_sun_nio_ch_KQueuePort_close0;
+		Java_sun_nio_ch_NativeThread_current;
+		Java_sun_nio_ch_NativeThread_init;
+		Java_sun_nio_ch_NativeThread_signal;
+		Java_sun_nio_ch_Net_canIPv6SocketJoinIPv4Group0;
+		Java_sun_nio_ch_Net_canJoin6WithIPv4Group0;
+		Java_sun_nio_ch_Net_socket0;
+		Java_sun_nio_ch_Net_bind0;
+		Java_sun_nio_ch_Net_connect0;
+		Java_sun_nio_ch_Net_listen;
+		Java_sun_nio_ch_Net_localPort;
+		Java_sun_nio_ch_Net_localInetAddress;
+		Java_sun_nio_ch_Net_getIntOption0;
+		Java_sun_nio_ch_Net_setIntOption0;
+                Java_sun_nio_ch_Net_initIDs;
+		Java_sun_nio_ch_Net_isIPv6Available0;
+		Java_sun_nio_ch_Net_joinOrDrop4;
+		Java_sun_nio_ch_Net_blockOrUnblock4;
+		Java_sun_nio_ch_Net_joinOrDrop6;
+		Java_sun_nio_ch_Net_blockOrUnblock6;
+		Java_sun_nio_ch_Net_setInterface4;
+		Java_sun_nio_ch_Net_getInterface4;
+		Java_sun_nio_ch_Net_setInterface6;
+		Java_sun_nio_ch_Net_getInterface6;
+		Java_sun_nio_ch_Net_shutdown;
+                Java_sun_nio_ch_PollArrayWrapper_interrupt;
+                Java_sun_nio_ch_PollArrayWrapper_poll0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_accept0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_initIDs;
+                Java_sun_nio_ch_SocketChannelImpl_checkConnect;
+		Java_sun_nio_ch_SocketChannelImpl_sendOutOfBandData;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_accept0;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_initIDs;
+		Java_sun_nio_ch_UnixAsynchronousSocketChannelImpl_checkConnect;
+		Java_sun_nio_fs_BsdNativeDispatcher_initIDs;
+		Java_sun_nio_fs_BsdNativeDispatcher_getfsstat;
+		Java_sun_nio_fs_BsdNativeDispatcher_fsstatEntry;
+		Java_sun_nio_fs_BsdNativeDispatcher_endfsstat;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGnomeVfs;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGnomeVfs;
+		Java_sun_nio_fs_UnixNativeDispatcher_init;
+		Java_sun_nio_fs_UnixNativeDispatcher_getcwd;
+		Java_sun_nio_fs_UnixNativeDispatcher_strerror;
+		Java_sun_nio_fs_UnixNativeDispatcher_dup;
+		Java_sun_nio_fs_UnixNativeDispatcher_access0;
+		Java_sun_nio_fs_UnixNativeDispatcher_stat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lstat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstat;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstatat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_chmod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchmod;
+		Java_sun_nio_fs_UnixNativeDispatcher_chown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lchown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchown;
+		Java_sun_nio_fs_UnixNativeDispatcher_utimes0;
+		Java_sun_nio_fs_UnixNativeDispatcher_futimes;
+		Java_sun_nio_fs_UnixNativeDispatcher_open0;
+		Java_sun_nio_fs_UnixNativeDispatcher_openat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_close;
+		Java_sun_nio_fs_UnixNativeDispatcher_read;
+		Java_sun_nio_fs_UnixNativeDispatcher_write;
+		Java_sun_nio_fs_UnixNativeDispatcher_fopen0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fclose;
+		Java_sun_nio_fs_UnixNativeDispatcher_opendir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fdopendir;
+		Java_sun_nio_fs_UnixNativeDispatcher_readdir;
+		Java_sun_nio_fs_UnixNativeDispatcher_closedir;
+		Java_sun_nio_fs_UnixNativeDispatcher_link0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlinkat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rename0;
+		Java_sun_nio_fs_UnixNativeDispatcher_renameat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_mkdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rmdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_symlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_readlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_realpath0;
+		Java_sun_nio_fs_UnixNativeDispatcher_statvfs0;
+		Java_sun_nio_fs_UnixNativeDispatcher_pathconf0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fpathconf;
+		Java_sun_nio_fs_UnixNativeDispatcher_mknod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwuid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrgid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getextmntent;
+		Java_sun_nio_fs_UnixCopyFile_transfer;
+		handleSocketError;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/mapfile-linux	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,197 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+SUNWprivate_1.1 {
+	global:
+                Java_java_nio_MappedByteBuffer_force0;
+                Java_java_nio_MappedByteBuffer_isLoaded0;
+                Java_java_nio_MappedByteBuffer_load0;
+                Java_sun_nio_ch_DatagramChannelImpl_disconnect0;
+                Java_sun_nio_ch_DatagramChannelImpl_initIDs;
+                Java_sun_nio_ch_DatagramChannelImpl_receive0;
+                Java_sun_nio_ch_DatagramChannelImpl_send0;
+                Java_sun_nio_ch_DatagramDispatcher_read0;
+                Java_sun_nio_ch_DatagramDispatcher_readv0;
+                Java_sun_nio_ch_DatagramDispatcher_write0;
+                Java_sun_nio_ch_DatagramDispatcher_writev0;
+                Java_sun_nio_ch_EPollArrayWrapper_epollCreate;
+                Java_sun_nio_ch_EPollArrayWrapper_epollCtl;
+                Java_sun_nio_ch_EPollArrayWrapper_epollWait;
+		Java_sun_nio_ch_EPollArrayWrapper_fdLimit;
+		Java_sun_nio_ch_EPollArrayWrapper_init;
+		Java_sun_nio_ch_EPollArrayWrapper_interrupt;
+		Java_sun_nio_ch_EPollArrayWrapper_offsetofData;
+		Java_sun_nio_ch_EPollArrayWrapper_sizeofEPollEvent;
+		Java_sun_nio_ch_EPoll_eventSize;
+		Java_sun_nio_ch_EPoll_eventsOffset;
+		Java_sun_nio_ch_EPoll_dataOffset;
+		Java_sun_nio_ch_EPoll_epollCreate;
+		Java_sun_nio_ch_EPoll_epollCtl;
+		Java_sun_nio_ch_EPoll_epollWait;
+		Java_sun_nio_ch_EPollPort_close0;
+		Java_sun_nio_ch_EPollPort_drain1;
+		Java_sun_nio_ch_EPollPort_interrupt;
+		Java_sun_nio_ch_EPollPort_socketpair;
+                Java_sun_nio_ch_FileChannelImpl_close0;
+                Java_sun_nio_ch_FileChannelImpl_initIDs;
+                Java_sun_nio_ch_FileChannelImpl_map0;
+                Java_sun_nio_ch_FileChannelImpl_position0;
+                Java_sun_nio_ch_FileChannelImpl_transferTo0;
+                Java_sun_nio_ch_FileChannelImpl_unmap0;
+                Java_sun_nio_ch_FileDispatcherImpl_close0;
+                Java_sun_nio_ch_FileDispatcherImpl_closeIntFD;
+		Java_sun_nio_ch_FileDispatcherImpl_force0;
+                Java_sun_nio_ch_FileDispatcherImpl_init;
+		Java_sun_nio_ch_FileDispatcherImpl_lock0;
+                Java_sun_nio_ch_FileDispatcherImpl_preClose0;
+                Java_sun_nio_ch_FileDispatcherImpl_pread0;
+                Java_sun_nio_ch_FileDispatcherImpl_pwrite0;
+                Java_sun_nio_ch_FileDispatcherImpl_read0;
+                Java_sun_nio_ch_FileDispatcherImpl_readv0;
+		Java_sun_nio_ch_FileDispatcherImpl_release0;
+		Java_sun_nio_ch_FileDispatcherImpl_size0;
+		Java_sun_nio_ch_FileDispatcherImpl_truncate0;
+                Java_sun_nio_ch_FileDispatcherImpl_write0;
+                Java_sun_nio_ch_FileDispatcherImpl_writev0;
+                Java_sun_nio_ch_FileKey_init;
+                Java_sun_nio_ch_FileKey_initIDs;
+		Java_sun_nio_ch_InheritedChannel_close0;
+		Java_sun_nio_ch_InheritedChannel_dup;
+		Java_sun_nio_ch_InheritedChannel_dup2;
+		Java_sun_nio_ch_InheritedChannel_open0;
+		Java_sun_nio_ch_InheritedChannel_peerAddress0;
+		Java_sun_nio_ch_InheritedChannel_peerPort0;
+		Java_sun_nio_ch_InheritedChannel_soType0;
+                Java_sun_nio_ch_IOUtil_configureBlocking;
+                Java_sun_nio_ch_IOUtil_drain;
+                Java_sun_nio_ch_IOUtil_fdVal;
+                Java_sun_nio_ch_IOUtil_initIDs;
+                Java_sun_nio_ch_IOUtil_makePipe;
+                Java_sun_nio_ch_IOUtil_randomBytes;
+                Java_sun_nio_ch_IOUtil_setfdVal;
+		Java_sun_nio_ch_NativeThread_current;
+		Java_sun_nio_ch_NativeThread_init;
+		Java_sun_nio_ch_NativeThread_signal;
+		Java_sun_nio_ch_Net_canIPv6SocketJoinIPv4Group0;
+		Java_sun_nio_ch_Net_canJoin6WithIPv4Group0;
+		Java_sun_nio_ch_Net_socket0;
+		Java_sun_nio_ch_Net_bind0;
+		Java_sun_nio_ch_Net_connect0;
+		Java_sun_nio_ch_Net_listen;
+		Java_sun_nio_ch_Net_localPort;
+		Java_sun_nio_ch_Net_localInetAddress;
+		Java_sun_nio_ch_Net_getIntOption0;
+		Java_sun_nio_ch_Net_setIntOption0;
+                Java_sun_nio_ch_Net_initIDs;
+		Java_sun_nio_ch_Net_isIPv6Available0;
+		Java_sun_nio_ch_Net_joinOrDrop4;
+		Java_sun_nio_ch_Net_blockOrUnblock4;
+		Java_sun_nio_ch_Net_joinOrDrop6;
+		Java_sun_nio_ch_Net_blockOrUnblock6;
+		Java_sun_nio_ch_Net_setInterface4;
+		Java_sun_nio_ch_Net_getInterface4;
+		Java_sun_nio_ch_Net_setInterface6;
+		Java_sun_nio_ch_Net_getInterface6;
+		Java_sun_nio_ch_Net_shutdown;
+                Java_sun_nio_ch_PollArrayWrapper_interrupt;
+                Java_sun_nio_ch_PollArrayWrapper_poll0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_accept0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_initIDs;
+                Java_sun_nio_ch_SocketChannelImpl_checkConnect;
+		Java_sun_nio_ch_SocketChannelImpl_sendOutOfBandData;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_accept0;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_initIDs;
+		Java_sun_nio_ch_UnixAsynchronousSocketChannelImpl_checkConnect;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGnomeVfs;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGnomeVfs;
+		Java_sun_nio_fs_LinuxWatchService_eventSize;
+		Java_sun_nio_fs_LinuxWatchService_eventOffsets;
+		Java_sun_nio_fs_LinuxWatchService_inotifyInit;
+		Java_sun_nio_fs_LinuxWatchService_inotifyAddWatch;
+		Java_sun_nio_fs_LinuxWatchService_inotifyRmWatch;
+		Java_sun_nio_fs_LinuxWatchService_configureBlocking;
+		Java_sun_nio_fs_LinuxWatchService_socketpair;
+		Java_sun_nio_fs_LinuxWatchService_poll;
+		Java_sun_nio_fs_LinuxNativeDispatcher_init;
+		Java_sun_nio_fs_LinuxNativeDispatcher_fgetxattr0;
+		Java_sun_nio_fs_LinuxNativeDispatcher_flistxattr;
+		Java_sun_nio_fs_LinuxNativeDispatcher_fsetxattr0;
+		Java_sun_nio_fs_LinuxNativeDispatcher_fremovexattr0;
+		Java_sun_nio_fs_LinuxNativeDispatcher_setmntent0;
+		Java_sun_nio_fs_LinuxNativeDispatcher_endmntent;
+		Java_sun_nio_fs_UnixNativeDispatcher_init;
+		Java_sun_nio_fs_UnixNativeDispatcher_getcwd;
+		Java_sun_nio_fs_UnixNativeDispatcher_strerror;
+		Java_sun_nio_fs_UnixNativeDispatcher_dup;
+		Java_sun_nio_fs_UnixNativeDispatcher_access0;
+		Java_sun_nio_fs_UnixNativeDispatcher_stat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lstat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstat;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstatat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_chmod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchmod;
+		Java_sun_nio_fs_UnixNativeDispatcher_chown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lchown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchown;
+		Java_sun_nio_fs_UnixNativeDispatcher_utimes0;
+		Java_sun_nio_fs_UnixNativeDispatcher_futimes;
+		Java_sun_nio_fs_UnixNativeDispatcher_open0;
+		Java_sun_nio_fs_UnixNativeDispatcher_openat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_close;
+		Java_sun_nio_fs_UnixNativeDispatcher_read;
+		Java_sun_nio_fs_UnixNativeDispatcher_write;
+		Java_sun_nio_fs_UnixNativeDispatcher_fopen0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fclose;
+		Java_sun_nio_fs_UnixNativeDispatcher_opendir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fdopendir;
+		Java_sun_nio_fs_UnixNativeDispatcher_readdir;
+		Java_sun_nio_fs_UnixNativeDispatcher_closedir;
+		Java_sun_nio_fs_UnixNativeDispatcher_link0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlinkat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rename0;
+		Java_sun_nio_fs_UnixNativeDispatcher_renameat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_mkdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rmdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_symlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_readlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_realpath0;
+		Java_sun_nio_fs_UnixNativeDispatcher_statvfs0;
+		Java_sun_nio_fs_UnixNativeDispatcher_pathconf0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fpathconf;
+		Java_sun_nio_fs_UnixNativeDispatcher_mknod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwuid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrgid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getextmntent;
+		Java_sun_nio_fs_UnixCopyFile_transfer;
+		handleSocketError;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/mapfile-solaris	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,185 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+SUNWprivate_1.1 {
+	global:
+                Java_java_nio_MappedByteBuffer_force0;
+                Java_java_nio_MappedByteBuffer_isLoaded0;
+                Java_java_nio_MappedByteBuffer_load0;
+                Java_sun_nio_ch_DatagramChannelImpl_disconnect0;
+                Java_sun_nio_ch_DatagramChannelImpl_initIDs;
+                Java_sun_nio_ch_DatagramChannelImpl_receive0;
+                Java_sun_nio_ch_DatagramChannelImpl_send0;
+                Java_sun_nio_ch_DatagramDispatcher_read0;
+                Java_sun_nio_ch_DatagramDispatcher_readv0;
+                Java_sun_nio_ch_DatagramDispatcher_write0;
+                Java_sun_nio_ch_DatagramDispatcher_writev0;
+                Java_sun_nio_ch_DevPollArrayWrapper_fdLimit;
+                Java_sun_nio_ch_DevPollArrayWrapper_init;
+                Java_sun_nio_ch_DevPollArrayWrapper_interrupt;
+                Java_sun_nio_ch_DevPollArrayWrapper_poll0;
+                Java_sun_nio_ch_DevPollArrayWrapper_register;
+                Java_sun_nio_ch_DevPollArrayWrapper_registerMultiple;
+                Java_sun_nio_ch_FileChannelImpl_close0;
+                Java_sun_nio_ch_FileChannelImpl_initIDs;
+                Java_sun_nio_ch_FileChannelImpl_map0;
+                Java_sun_nio_ch_FileChannelImpl_position0;
+                Java_sun_nio_ch_FileChannelImpl_transferTo0;
+                Java_sun_nio_ch_FileChannelImpl_unmap0;
+                Java_sun_nio_ch_FileDispatcherImpl_close0;
+                Java_sun_nio_ch_FileDispatcherImpl_closeIntFD;
+		Java_sun_nio_ch_FileDispatcherImpl_force0;
+                Java_sun_nio_ch_FileDispatcherImpl_init;
+		Java_sun_nio_ch_FileDispatcherImpl_lock0;
+                Java_sun_nio_ch_FileDispatcherImpl_preClose0;
+                Java_sun_nio_ch_FileDispatcherImpl_pread0;
+                Java_sun_nio_ch_FileDispatcherImpl_pwrite0;
+                Java_sun_nio_ch_FileDispatcherImpl_read0;
+                Java_sun_nio_ch_FileDispatcherImpl_readv0;
+		Java_sun_nio_ch_FileDispatcherImpl_release0;
+		Java_sun_nio_ch_FileDispatcherImpl_size0;
+		Java_sun_nio_ch_FileDispatcherImpl_truncate0;
+                Java_sun_nio_ch_FileDispatcherImpl_write0;
+                Java_sun_nio_ch_FileDispatcherImpl_writev0;
+                Java_sun_nio_ch_FileKey_init;
+                Java_sun_nio_ch_FileKey_initIDs;
+		Java_sun_nio_ch_InheritedChannel_close0;
+		Java_sun_nio_ch_InheritedChannel_dup;
+		Java_sun_nio_ch_InheritedChannel_dup2;
+		Java_sun_nio_ch_InheritedChannel_open0;
+		Java_sun_nio_ch_InheritedChannel_peerAddress0;
+		Java_sun_nio_ch_InheritedChannel_peerPort0;
+		Java_sun_nio_ch_InheritedChannel_soType0;
+                Java_sun_nio_ch_IOUtil_configureBlocking;
+                Java_sun_nio_ch_IOUtil_drain;
+                Java_sun_nio_ch_IOUtil_fdVal;
+                Java_sun_nio_ch_IOUtil_initIDs;
+                Java_sun_nio_ch_IOUtil_makePipe;
+                Java_sun_nio_ch_IOUtil_randomBytes;
+                Java_sun_nio_ch_IOUtil_setfdVal;
+		Java_sun_nio_ch_NativeThread_current;
+		Java_sun_nio_ch_NativeThread_init;
+		Java_sun_nio_ch_NativeThread_signal;
+		Java_sun_nio_ch_Net_canIPv6SocketJoinIPv4Group0;
+                Java_sun_nio_ch_Net_canJoin6WithIPv4Group0;
+		Java_sun_nio_ch_Net_socket0;
+		Java_sun_nio_ch_Net_bind0;
+		Java_sun_nio_ch_Net_connect0;
+		Java_sun_nio_ch_Net_listen;
+		Java_sun_nio_ch_Net_localPort;
+		Java_sun_nio_ch_Net_localInetAddress;
+		Java_sun_nio_ch_Net_getIntOption0;
+		Java_sun_nio_ch_Net_setIntOption0;
+                Java_sun_nio_ch_Net_initIDs;
+		Java_sun_nio_ch_Net_isIPv6Available0;
+		Java_sun_nio_ch_Net_joinOrDrop4;
+		Java_sun_nio_ch_Net_blockOrUnblock4;
+		Java_sun_nio_ch_Net_joinOrDrop6;
+		Java_sun_nio_ch_Net_blockOrUnblock6;
+		Java_sun_nio_ch_Net_setInterface4;
+		Java_sun_nio_ch_Net_getInterface4;
+		Java_sun_nio_ch_Net_setInterface6;
+		Java_sun_nio_ch_Net_getInterface6;
+		Java_sun_nio_ch_Net_shutdown;
+                Java_sun_nio_ch_PollArrayWrapper_interrupt;
+                Java_sun_nio_ch_PollArrayWrapper_poll0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_accept0;
+                Java_sun_nio_ch_ServerSocketChannelImpl_initIDs;
+                Java_sun_nio_ch_SocketChannelImpl_checkConnect;
+		Java_sun_nio_ch_SocketChannelImpl_sendOutOfBandData;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_accept0;
+		Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_initIDs;
+		Java_sun_nio_ch_UnixAsynchronousSocketChannelImpl_checkConnect;
+		Java_sun_nio_ch_SolarisEventPort_init;
+		Java_sun_nio_ch_SolarisEventPort_portCreate;
+		Java_sun_nio_ch_SolarisEventPort_portClose;
+		Java_sun_nio_ch_SolarisEventPort_portAssociate;
+		Java_sun_nio_ch_SolarisEventPort_portGet;
+		Java_sun_nio_ch_SolarisEventPort_portGetn;
+		Java_sun_nio_ch_SolarisEventPort_portSend;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGio;
+		Java_sun_nio_fs_GnomeFileTypeDetector_initializeGnomeVfs;
+		Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGnomeVfs;
+		Java_sun_nio_fs_UnixNativeDispatcher_init;
+		Java_sun_nio_fs_UnixNativeDispatcher_getcwd;
+		Java_sun_nio_fs_UnixNativeDispatcher_strerror;
+		Java_sun_nio_fs_UnixNativeDispatcher_dup;
+		Java_sun_nio_fs_UnixNativeDispatcher_access0;
+		Java_sun_nio_fs_UnixNativeDispatcher_stat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lstat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstat;
+		Java_sun_nio_fs_UnixNativeDispatcher_fstatat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_chmod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchmod;
+		Java_sun_nio_fs_UnixNativeDispatcher_chown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_lchown0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fchown;
+		Java_sun_nio_fs_UnixNativeDispatcher_utimes0;
+		Java_sun_nio_fs_UnixNativeDispatcher_futimes;
+		Java_sun_nio_fs_UnixNativeDispatcher_open0;
+		Java_sun_nio_fs_UnixNativeDispatcher_openat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_close;
+		Java_sun_nio_fs_UnixNativeDispatcher_read;
+		Java_sun_nio_fs_UnixNativeDispatcher_write;
+		Java_sun_nio_fs_UnixNativeDispatcher_fopen0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fclose;
+		Java_sun_nio_fs_UnixNativeDispatcher_opendir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fdopendir;
+		Java_sun_nio_fs_UnixNativeDispatcher_readdir;
+		Java_sun_nio_fs_UnixNativeDispatcher_closedir;
+		Java_sun_nio_fs_UnixNativeDispatcher_link0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_unlinkat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rename0;
+		Java_sun_nio_fs_UnixNativeDispatcher_renameat0;
+		Java_sun_nio_fs_UnixNativeDispatcher_mkdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_rmdir0;
+		Java_sun_nio_fs_UnixNativeDispatcher_symlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_readlink0;
+		Java_sun_nio_fs_UnixNativeDispatcher_realpath0;
+		Java_sun_nio_fs_UnixNativeDispatcher_statvfs0;
+		Java_sun_nio_fs_UnixNativeDispatcher_pathconf0;
+		Java_sun_nio_fs_UnixNativeDispatcher_fpathconf;
+		Java_sun_nio_fs_UnixNativeDispatcher_mknod0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwuid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrgid;
+		Java_sun_nio_fs_UnixNativeDispatcher_getpwnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getgrnam0;
+		Java_sun_nio_fs_UnixNativeDispatcher_getextmntent;
+		Java_sun_nio_fs_UnixCopyFile_transfer;
+		Java_sun_nio_fs_SolarisNativeDispatcher_init;
+		Java_sun_nio_fs_SolarisNativeDispatcher_facl;
+		Java_sun_nio_fs_SolarisWatchService_init;
+		Java_sun_nio_fs_SolarisWatchService_portCreate;
+		Java_sun_nio_fs_SolarisWatchService_portAssociate;
+		Java_sun_nio_fs_SolarisWatchService_portDissociate;
+		Java_sun_nio_fs_SolarisWatchService_portSend;
+		Java_sun_nio_fs_SolarisWatchService_portGetn;
+		handleSocketError;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,17 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+text: .text%Java_sun_nio_ch_FileChannelImpl_initIDs;
+text: .text%Java_sun_nio_ch_FileDispatcher_initIDs;
+text: .text%Java_sun_nio_ch_IOUtil_initIDs;
+text: .text%Java_sun_nio_ch_FileDispatcher_read0;
+text: .text%convertReturnVal;
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,12 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/nio/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,17 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+text: .text%Java_sun_nio_ch_FileChannelImpl_initIDs;
+text: .text%Java_sun_nio_ch_FileDispatcher_initIDs;
+text: .text%Java_sun_nio_ch_IOUtil_initIDs;
+text: .text%Java_sun_nio_ch_FileDispatcher_read0;
+text: .text%convertReturnVal;
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/npt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,79 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+
+# It's currently used by jpda and hprof.  Put it in base module for now.
+LIBRARY = npt
+PRODUCT = sun
+LIBRARY_OUTPUT = npt
+
+# Configure the CFLAGS for this library.
+
+FILES_m = mapfile-vers
+
+include $(BUILDDIR)/common/Defs.gmk
+
+SRCDIR=$(SHARE_SRC)/npt
+PSRCDIR=$(PLATFORM_SRC)/npt
+
+# Use the mapfile-vers (See the mapfile located with this Makefile)
+ifdef FILES_m
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+#
+# Files to compile.
+#
+FILES_c = 			\
+	npt.c 	\
+	utf.c 	\
+	utf_md.c
+
+OTHER_INCLUDES = -I$(SRCDIR) -I$(PSRCDIR)
+
+#
+# Library to compile.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+# We don't want to link against -ljava
+JAVALIB=
+
+# Add -export options to explicitly spell exported symbols
+ifeq ($(PLATFORM), windows)
+  OTHER_LCF += -export:nptInitialize -export:nptTerminate
+endif
+
+# Add location of iconv header
+ifeq ($(PLATFORM), macosx)
+  OTHER_LDLIBS += -liconv
+endif
+
+#
+# Add to ambient vpath so we pick up the library files
+#
+vpath %.c $(SRCDIR):$(PSRCDIR)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/npt/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    nptInitialize;
+	    nptTerminate;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/redist/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,497 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Imports files exported by a hotspot build or provided from an external
+#   location into the OUTPUTDIR, and also primes the OUTPUTDIR with files
+#   that are provided inside this workspace.
+#
+# IMPORT_LIST contains the list of destination files that are copied 
+#     from external places (outside this workspace).
+#
+# INTERNAL_IMPORT_LIST is the list of destination files from BUILDDIR.
+# 
+
+BUILDDIR = ../..
+PRODUCT  = java
+include $(BUILDDIR)/common/Defs.gmk
+include $(BUILDDIR)/Tools.gmk
+
+$(info ENTERING redist)
+
+SERVER_LOCATION = server
+CLIENT_LOCATION = client
+KERNEL_LOCATION = kernel
+
+DB_SUFFIX = _db
+DTRACE_SUFFIX = _dtrace
+
+ifeq ($(PLATFORM), windows)
+  LIB_LOCATION = $(BINDIR)
+else ifeq ($(PLATFORM), macosx)
+  LIB_LOCATION = $(LIBDIR)
+else
+  LIB_LOCATION = $(LIBDIR)/$(LIBARCH)
+endif
+
+JVM_NAME               = $(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX)
+JVMLIB_NAME            = $(LIB_PREFIX)jvm.$(LIB_SUFFIX)
+JVMMAP_NAME            = $(LIB_PREFIX)jvm.map
+JVMPDB_NAME            = $(LIB_PREFIX)jvm.pdb
+LIBJSIG_NAME           = $(LIB_PREFIX)jsig.$(LIBRARY_SUFFIX)
+JVMDB_NAME             = $(LIB_PREFIX)jvm$(DB_SUFFIX).$(LIBRARY_SUFFIX)
+JVMDTRACE_NAME         = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).$(LIBRARY_SUFFIX)
+
+JVM_DEBUGINFO_NAME       = $(LIB_PREFIX)jvm.debuginfo
+LIBJSIG_DEBUGINFO_NAME   = $(LIB_PREFIX)jsig.debuginfo
+JVMDB_DEBUGINFO_NAME     = $(LIB_PREFIX)jvm$(DB_SUFFIX).debuginfo
+JVMDTRACE_DEBUGINFO_NAME = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).debuginfo
+
+CLASSSHARINGDATA_DIR   = $(BUILDDIR)/../make/tools/sharing
+
+# Needed to do file copy
+ABS_BUILDDIR :=$(call FullPath,$(BUILDDIR))
+
+SUBDIRS_desktop = fonts
+SUBDIRS_tools   = sajdi
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all clean clobber::
+	$(SUBDIRS-loop)
+
+all:: build
+
+# List of files created here or coming from BUILDDIR area (this workspace)
+INTERNAL_IMPORT_LIST = $(LIBDIR)/classlist
+
+# List of files coming from outside this workspace
+ifeq ($(JVM_VARIANT_SERVER),true)
+    IMPORT_LIST = $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME) \
+                  $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt
+    ifneq ($(OBJCOPY),)
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)),)
+           IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME)
+        endif
+    endif
+endif
+ifeq ($(JVM_VARIANT_CLIENT),true)
+    IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \
+                   $(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt
+    ifneq ($(OBJCOPY),)
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)),)
+            IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME)
+        endif
+    endif
+endif
+
+$(info ENTERING redist 2)
+ifeq ($(PLATFORM), windows)
+    IMPORT_LIST += $(BINDIR)/$(notdir $(MSVCR100DLL))
+
+    $(BINDIR)/$(notdir $(MSVCR100DLL)): $(MSVCR100DLL)
+	$(install-import-file)
+	$(call chmod-file, a+x)
+
+    # Get the hotspot .map and .pdb files for client and server
+    ifeq ($(JVM_VARIANT_SERVER),true)
+        IMPORT_LIST += \
+		$(LIBDIR)/$(JVMLIB_NAME) \
+		$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
+		$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME)
+    endif
+
+    # Add .map and .pdb files to the import path for client and kernel VMs. 
+    ifeq ($(JVM_VARIANT_CLIENT),true)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
+                       $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME)
+    endif
+    ifeq ($(JVM_VARIANT_KERNEL),true)
+        IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME) \
+                       $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME)
+    endif
+
+    $(info XXXX $(LIBDIR)/$(JVMLIB_NAME): $(HOTSPOT_LIB_PATH)/$(JVMLIB_NAME))
+    $(LIBDIR)/$(JVMLIB_NAME): $(HOTSPOT_LIB_PATH)/$(JVMLIB_NAME)
+	$(install-import-file)
+
+    # it is OK for the .map and .pdb files to not exist, so do not force a 
+    # dependency on them from the bootstrap location, and allow the copy to fail.
+    $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_CLIENT_PATH)/$(JVMMAP_NAME)  $@
+
+    $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVMMAP_NAME)  $@
+
+    $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_SERVER_PATH)/$(JVMMAP_NAME) $@
+
+    $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_CLIENT_PATH)/$(JVMPDB_NAME)  $@
+
+    $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME):
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVMPDB_NAME)  $@
+
+    $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME): 
+	@$(prep-target)
+	-$(CP) $(HOTSPOT_SERVER_PATH)/$(JVMPDB_NAME) $@
+
+else
+    # Posix like systems
+    IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_NAME)
+    ifneq ($(OBJCOPY),)
+        # the import JDK may not contain .debuginfo files
+        ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+            IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+        endif
+    endif
+    ifeq ($(JVM_VARIANT_CLIENT),true)
+        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
+        ifneq ($(OBJCOPY),)
+            # the import JDK may not contain the target of the symlink
+            ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+            endif
+        endif
+    endif
+    ifeq ($(JVM_VARIANT_SERVER),true)
+        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME)
+        ifneq ($(OBJCOPY),)
+            # the import JDK may not contain the target of the symlink
+            ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME)
+            endif
+        endif
+    endif
+
+    ifeq ($(PLATFORM), solaris)
+
+        ifeq ($(JVM_VARIANT_CLIENT),true)
+            IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME)
+
+            # The conditional can be removed when import JDKs contain these files.
+            ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME)
+                IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME)
+                IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME)
+                ifneq ($(OBJCOPY),)
+                    # the import JDK may not contain .debuginfo files
+                    ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+                    endif
+                endif
+            else
+                $(warning WARNING: $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME) not found!)
+            endif
+
+            $(LIB_LOCATION)/$(JVM_NAME): $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME)
+			@$(prep-target)
+        endif 
+
+        ifeq ($(JVM_VARIANT_SERVER),true)
+            IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME)
+            ifneq ($(OBJCOPY),)
+                # the import JDK may not contain .debuginfo files
+                ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)),)
+                    IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME)
+                endif
+            endif
+            # The conditional can be removed when import JDKs contain these files.
+            ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME)
+                ifneq ($(OBJCOPY),)
+                    # the import JDK may not contain .debuginfo files
+                    ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME)
+                    endif
+                endif
+            else
+                $(warning WARNING: $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME) not found!)
+            endif 
+
+            # The conditional can be removed when import JDKs contain these files.
+            ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME)
+                ifneq ($(OBJCOPY),)
+                    # the import JDK may not contain .debuginfo files
+                    ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)),)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME)
+                    endif
+                endif
+            else
+                $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME) not found!)
+            endif
+
+            # The conditional can be removed when import JDKs contain these files.
+            ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)),)
+                IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME)
+                ifneq ($(OBJCOPY),)
+                    # the import JDK may not contain .debuginfo files
+                    ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)),)
+                        IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+                    endif
+                endif
+            else
+                $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME) not found!)
+            endif
+        endif
+    endif 
+endif 
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_NAME): $(HOTSPOT_KERNEL_PATH)/$(JVM_NAME)
+	$(install-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(LIBJSIG_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME):
+	@$(prep-target)
+	$(call install-sym-link, ../$(LIBJSIG_NAME))
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) \
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME):
+	@$(prep-target)
+	$(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME))
+endif
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME):
+	@$(prep-target)
+	$(call install-sym-link, ../$(LIBJSIG_NAME))
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME):
+	@$(prep-target)
+	$(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME))
+endif
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_NAME)
+	$(install-import-file)
+	@$(call binary_file_verification,$@)
+
+ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)
+	$(install-import-file)
+endif
+
+$(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt : $(HOTSPOT_SERVER_PATH)/Xusage.txt
+	$(install-import-file)
+
+
+$(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt : $(HOTSPOT_CLIENT_PATH)/Xusage.txt
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(KERNEL_LOCATION)/Xusage.txt : $(HOTSPOT_KERNEL_PATH)/Xusage.txt
+	$(install-file)
+
+#
+# Specific to non-OpenJDK building
+#
+ifndef OPENJDK
+
+INTERNAL_IMPORT_LIST += \
+            $(LIBDIR)/security/US_export_policy.jar \
+            $(LIBDIR)/security/local_policy.jar \
+            $(LIBDIR)/jce.jar
+
+$(LIBDIR)/jce.jar: \
+	    $(JDK_TOPDIR)/make/closed/tools/crypto/jce/jce.jar
+	$(install-file)
+$(LIBDIR)/security/US_export_policy.jar: \
+	    $(JDK_TOPDIR)/make/closed/tools/crypto/jce/US_export_policy.jar
+	$(install-file)
+$(LIBDIR)/security/local_policy.jar: \
+	    $(JDK_TOPDIR)/make/closed/tools/crypto/jce/local_policy.jar
+	$(install-file)
+
+endif # OPENJDK
+
+# Construct classlist file
+$(LIBDIR)/classlist: \
+    $(CLASSSHARINGDATA_DIR)/classlist.$(PLATFORM) \
+    $(ADDJSUM_JARFILE)
+	@$(prep-target)
+	@$(RM) -f $@.temp
+	$(TOOL_ADDJSUM) \
+	    $(CLASSSHARINGDATA_DIR)/classlist.$(PLATFORM) $@.temp
+	$(MV) $@.temp $@
+
+# Import internal files (ones that are stashed in this source tree)
+import_internal_files : $(INTERNAL_IMPORT_LIST)
+
+# Import files from the JDK that we are not building
+import_files: $(IMPORT_LIST)
+
+# Get component information variables and rules
+include $(BUILDDIR)/common/internal/ImportComponents.gmk
+
+# Security files we need to import
+SEC_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/sec-bin.zip
+SEC_FILES_WIN_ZIP=$(ABS_BUILDDIR)/tools/crypto/sec-windows-bin.zip
+JGSS_WIN32_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/jgss-windows-i586-bin.zip
+JGSS_WIN64_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/jgss-windows-x64-bin.zip
+
+# Unzip zip file $2 into directory $1 (if $2 exists)
+#   Warning: $2 must be absolute path not relative
+define SecUnzipper
+if [ -f $2 ] ; then \
+  $(MKDIR) -p $1; \
+  $(ECHO) "( $(CD) $1 && $(UNZIP) -o $2 )"; \
+  ( $(CD) $1 && $(UNZIP) -o $2 ); \
+fi
+endef
+
+# If sec-bin exists, unpack it into the build directory
+#   Also, the library recompile build indirectly depends on two SSL classes,
+#   so copy those as well   FIXUP
+#   if sec-windows-bin exists, unpack it into the build directory
+#   if JGSS files exists, unpack it into the build directory
+$(TEMPDIR)/security_imported:
+	@$(prep-target)
+	@$(call SecUnzipper,$(OUTPUTDIR),$(SEC_FILES_ZIP))
+ifeq ($(PLATFORM), windows)
+	@$(call SecUnzipper,$(OUTPUTDIR),$(SEC_FILES_WIN_ZIP))
+endif
+ifeq ($(PLATFORM), windows)
+    ifeq ($(ARCH_DATA_MODEL), 32)
+	@$(call SecUnzipper,$(OUTPUTDIR),$(JGSS_WIN32_FILES_ZIP))
+    else
+	@$(call SecUnzipper,$(OUTPUTDIR),$(JGSS_WIN64_FILES_ZIP))
+    endif
+endif
+	@$(ECHO) "Imported on `$(DATE)`" > $@
+
+# Import all files from other components
+$(TEMPDIR)/components_imported:
+	@$(prep-target)
+	$(call import-component-binaries,$(ABS_OUTPUTDIR))
+	$(call import-component-sources,$(IMPORTSRCDIR))
+	$(call import-component-docs,$(IMPORTDOCDIR))
+	$(call import-component-classes,$(CLASSDESTDIR))
+	@$(ECHO) "Imported on `$(DATE)`" > $@
+
+# Do pretty much everything
+build : import_files \
+	import_internal_files \
+	$(TEMPDIR)/components_imported \
+	$(TEMPDIR)/security_imported
+
+# Clean up what we imported (except for component files)
+clean clobber::
+	$(RM) $(IMPORT_LIST)
+	$(RM) $(INTERNAL_IMPORT_LIST)
+	$(call import-component-sources-clean,$(IMPORTSRCDIR))
+	$(call import-component-docs-clean,$(IMPORTDOCDIR))
+	$(call import-component-classes-clean,$(CLASSDESTDIR))
+	$(RM) $(TEMPDIR)/components_imported
+	$(RM) $(TEMPDIR)/security_imported
+
+.PHONY: import_files import_internal_files
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/redist/fonts/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,110 @@
+#
+# Copyright (c) 2009, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PRODUCT  = java
+include $(BUILDDIR)/common/Defs.gmk
+
+
+#
+# List of lucida font files that we redistribute.
+#
+
+SHARED_FONTFILES =					\
+	$(LIBDIR)/fonts/LucidaTypewriterRegular.ttf	\
+	$(LIBDIR)/fonts/LucidaTypewriterBold.ttf        \
+	$(LIBDIR)/fonts/LucidaBrightRegular.ttf         \
+	$(LIBDIR)/fonts/LucidaBrightDemiBold.ttf        \
+	$(LIBDIR)/fonts/LucidaBrightItalic.ttf          \
+	$(LIBDIR)/fonts/LucidaBrightDemiItalic.ttf	\
+	$(LIBDIR)/fonts/LucidaSansRegular.ttf       	\
+	$(LIBDIR)/fonts/LucidaSansDemiBold.ttf       	\
+
+ifeq ($(PLATFORM), linux)
+
+# The oblique versions of the font are derived from the base versions
+# and since 2D can do this derivation on the fly at run time there is no
+# need to redistribute the fonts. An exception to this is on Linux.
+# The reason is that the Lucidas are specified in the font.properties files
+# on Linux, and so AWT/Motif components expect to be able to ask the Xserver
+# for these oblique fonts, but the Xserver cannot do the same derivation as
+# 2D can.
+
+OBLIQUE_FONTFILES =                                             \
+	$(LIBDIR)/oblique-fonts/LucidaTypewriterOblique.ttf     \
+	$(LIBDIR)/oblique-fonts/LucidaTypewriterBoldOblique.ttf \
+	$(LIBDIR)/oblique-fonts/LucidaSansOblique.ttf       	\
+	$(LIBDIR)/oblique-fonts/LucidaSansDemiOblique.ttf       \
+
+endif
+
+ifndef OPENJDK
+
+# Lucida font files are not included in the OpenJDK distribution.
+# Get names of font files
+
+# Copy font files into OUTPUTDIR area
+
+FONTFILES = $(SHARED_FONTFILES)
+FONTSDIR  = $(LIBDIR)/fonts
+FONTSDIRFILE  = $(FONTSDIR)/fonts.dir
+INTERNAL_IMPORT_LIST = $(FONTFILES) 
+
+ifneq ($(PLATFORM), windows)
+  INTERNAL_IMPORT_LIST += $(FONTSDIRFILE)
+endif
+
+$(LIBDIR)/fonts/%.ttf: $(CLOSED_SRC)/share/lib/fonts/%.ttf
+	$(install-file)
+
+$(FONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.fonts.dir
+	$(install-file)
+
+ifeq ($(PLATFORM), linux)
+
+# The oblique fonts are only needed/wanted on Linux.
+
+OBLFONTSDIR  = $(LIBDIR)/oblique-fonts
+OBLFONTSDIRFILE	 = $(OBLFONTSDIR)/fonts.dir
+INTERNAL_IMPORT_LIST += $(OBLIQUE_FONTFILES) $(OBLFONTSDIRFILE)
+
+$(LIBDIR)/oblique-fonts/%.ttf: $(CLOSED_SRC)/share/lib/fonts/oblique/%.ttf
+	$(install-file)
+
+$(OBLFONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.oblique-fonts.dir
+	$(install-file)
+
+endif # linux
+
+all build : $(INTERNAL_IMPORT_LIST)
+
+clean clobber::
+	$(RM) $(INTERNAL_IMPORT_LIST)
+
+else 
+
+all build clean clobber :
+
+endif # !OPENJDK
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/redist/sajdi/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,99 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PRODUCT  = java
+include $(BUILDDIR)/common/Defs.gmk
+
+ifeq ($(PLATFORM), windows)
+  LIB_LOCATION = $(BINDIR)
+else ifeq ($(PLATFORM), macosx)
+  LIB_LOCATION = $(LIBDIR)
+else
+  LIB_LOCATION = $(LIBDIR)/$(LIBARCH)
+endif
+
+# INCLUDE_SA is false on platforms where SA is not supported.
+# On platforms where it is supported, we want to allow it to
+# not be present, at least temporarily.  So,
+# if the SA files (well, just sa-jdi.jar) do not exist
+# in the HOTSPOT_IMPORT_PATH, then we won't build SA.
+SA_EXISTS := $(shell if [ -r $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar ] ; then \
+                          $(ECHO) true; \
+                        else \
+                          $(ECHO) false; \
+                        fi)
+
+ifeq ($(SA_EXISTS), false)
+  INCLUDE_SA := false
+endif
+
+IMPORT_LIST =
+ifeq ($(INCLUDE_SA), true)
+  IMPORT_LIST += $(LIBDIR)/sa-jdi.jar \
+                 $(LIB_LOCATION)/$(SALIB_NAME)
+  ifeq ($(PLATFORM), windows)
+    IMPORT_LIST += $(LIB_LOCATION)/$(SAMAP_NAME) \
+                   $(LIB_LOCATION)/$(SAPDB_NAME)
+  endif
+  ifneq ($(OBJCOPY),)
+    # the import JDK may not contain .debuginfo files
+    ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SA_DEBUGINFO_NAME)),)
+      IMPORT_LIST += $(LIB_LOCATION)/$(SA_DEBUGINFO_NAME)
+    endif
+  endif
+endif # INCLUDE_SA
+
+
+ifeq ($(INCLUDE_SA), true)
+# The Serviceability Agent is built in the Hotspot workspace.
+# It contains two files:
+#  - sa-jdi.jar:  This goes into the same dir as tools.jar.
+#  - a shared library:  sawindbg.dll on windows / libproc.sa on unix
+#		        This goes into the same dir as the other
+#			shared libs, eg. libjdwp.so.
+$(LIBDIR)/sa-jdi.jar: $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar
+	$(install-importonly-file)
+
+$(LIB_LOCATION)/$(SALIB_NAME): $(HOTSPOT_SALIB_PATH)/$(SALIB_NAME)
+	$(install-import-file)
+
+ifeq ($(PLATFORM), windows)
+$(LIB_LOCATION)/$(SAPDB_NAME): $(HOTSPOT_SALIB_PATH)/$(SAPDB_NAME)
+	$(install-import-file)
+
+$(LIB_LOCATION)/$(SAMAP_NAME): $(HOTSPOT_SALIB_PATH)/$(SAMAP_NAME)
+	$(install-import-file)
+endif # windows
+
+  ifneq ($(OBJCOPY),)
+$(LIB_LOCATION)/$(SA_DEBUGINFO_NAME): $(HOTSPOT_SALIB_PATH)/$(SA_DEBUGINFO_NAME)
+	$(install-import-file)
+  endif
+endif # INCLUDE_SA
+
+all: $(IMPORT_LIST)
+
+clean clobber::
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/security/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,125 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = java.security
+PRODUCT = sun
+JAVAC_MAX_WARNINGS = true 
+JAVAC_LINT_OPTIONS = -Xlint:all
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Rules
+#
+AUTO_FILES_JAVA_DIRS = java/security
+
+#
+# Directories
+#
+
+PROPS_SRC   = $(JDK_TOPDIR)/src/share/lib/security/java.security
+
+ifeq ($(PLATFORM), solaris)
+PROPS_SRC   = $(JDK_TOPDIR)/src/share/lib/security/java.security-solaris
+
+else # NOT_SOLARIS
+
+# Register Microsoft CryptoAPI provider only on Windows platform.
+ifeq ($(PLATFORM), windows)
+  PROPS_SRC   = $(JDK_TOPDIR)/src/share/lib/security/java.security-windows
+else # NOT_WINDOWS
+
+ifeq ($(PLATFORM), macosx)
+  PROPS_SRC   = $(JDK_TOPDIR)/src/share/lib/security/java.security-macosx
+endif # MACOSX
+
+endif # NOT_WINDOWS
+endif # NOT_SOLARIS
+
+
+PROPS_BUILD = $(LIBDIR)/security/java.security
+
+POLICY_SRC =	$(JDK_TOPDIR)/src/share/lib/security/java.policy
+POLICY_BUILD = $(LIBDIR)/security/java.policy
+
+CACERTS_SRC =	$(CACERTS_FILE)
+CACERTS_BUILD = $(LIBDIR)/security/cacerts
+
+ifndef OPENJDK
+  BLACKLIST_SRC =	$(CLOSED_SHARE_SRC)/lib/security/blacklist
+  BLACKLIST_BUILD = $(LIBDIR)/security/blacklist
+  TRUSTEDLIBS_SRC = $(CLOSED_SHARE_SRC)/lib/security/trusted.libraries
+  TRUSTEDLIBS_BUILD = $(LIBDIR)/security/trusted.libraries
+endif
+
+FILES_class = $(FILES_java:%.java=$(CLASSBINDIR)/%.class)
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Rules.gmk
+
+ifdef OPENJDK
+build: properties policy cacerts
+else
+build: properties policy cacerts blacklist trustedlibs
+endif
+
+install: all
+
+properties: classes  $(PROPS_BUILD)
+
+policy: classes  $(POLICY_BUILD)
+
+cacerts: classes $(CACERTS_BUILD)
+
+blacklist: classes $(BLACKLIST_BUILD)
+
+trustedlibs: classes $(TRUSTEDLIBS_BUILD)
+
+$(PROPS_BUILD): $(PROPS_SRC)
+	$(install-file)
+
+$(POLICY_BUILD): $(POLICY_SRC)
+	$(install-file)
+
+$(CACERTS_BUILD): $(CACERTS_SRC)
+	$(install-file)
+
+$(BLACKLIST_BUILD): $(BLACKLIST_SRC)
+	$(install-file)
+
+$(TRUSTEDLIBS_BUILD): $(TRUSTEDLIBS_SRC)
+	$(install-file)
+
+clean clobber:: .delete.classlist
+	$(RM) -r $(CLASSBINDIR)/java/security
+	$(RM) $(PROPS_BUILD) $(POLICY_BUILD) $(CACERTS_BUILD) $(BLACKLIST_BUILD) $(TRUSTEDLIBS_BUILD)
+
+# Additional Rule for building sun.security.util
+$(CLASSBINDIR)/%.class: $(SHARE_SRC)/sun/%.java
+	@$(ECHO) $? >> $(TEMPDIR)/.classes.list
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/sun_nio/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,78 @@
+#
+# Copyright (c) 2003, 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# This is the list of java classes that will be automatically built
+# from sources.  See Exportedfiles.gmk for the list of files which
+# will generate header files
+#
+FILES_java = \
+    sun/nio/cs/StandardCharsets.java \
+    sun/nio/cs/AbstractCharsetProvider.java \
+    sun/nio/cs/HistoricallyNamedCharset.java \
+    sun/nio/cs/Surrogate.java \
+    sun/nio/cs/CharsetMapping.java \
+    sun/nio/cs/SingleByteEncoder.java \
+    sun/nio/cs/SingleByteDecoder.java \
+    sun/nio/cs/UnicodeEncoder.java \
+    sun/nio/cs/UnicodeDecoder.java \
+    sun/nio/cs/ISO_8859_1.java \
+    sun/nio/cs/ISO_8859_2.java \
+    sun/nio/cs/ISO_8859_4.java \
+    sun/nio/cs/ISO_8859_5.java \
+    sun/nio/cs/ISO_8859_7.java \
+    sun/nio/cs/ISO_8859_9.java \
+    sun/nio/cs/ISO_8859_13.java \
+    sun/nio/cs/ISO_8859_15.java \
+    sun/nio/cs/IBM437.java \
+    sun/nio/cs/IBM737.java \
+    sun/nio/cs/IBM775.java \
+    sun/nio/cs/IBM850.java \
+    sun/nio/cs/IBM852.java \
+    sun/nio/cs/IBM855.java \
+    sun/nio/cs/IBM857.java \
+    sun/nio/cs/IBM858.java \
+    sun/nio/cs/IBM862.java \
+    sun/nio/cs/IBM866.java \
+    sun/nio/cs/IBM874.java \
+    sun/nio/cs/KOI8_R.java \
+    sun/nio/cs/KOI8_U.java \
+    sun/nio/cs/MS1250.java \
+    sun/nio/cs/MS1251.java \
+    sun/nio/cs/MS1252.java \
+    sun/nio/cs/MS1253.java \
+    sun/nio/cs/MS1254.java \
+    sun/nio/cs/MS1257.java \
+    sun/nio/cs/US_ASCII.java \
+    sun/nio/cs/UTF_16.java \
+    sun/nio/cs/UTF_16BE.java \
+    sun/nio/cs/UTF_16LE.java \
+    sun/nio/cs/UTF_16LE_BOM.java \
+    sun/nio/cs/UTF_32.java \
+    sun/nio/cs/UTF_32BE.java \
+    sun/nio/cs/UTF_32LE.java \
+    sun/nio/cs/UTF_32BE_BOM.java \
+    sun/nio/cs/UTF_32LE_BOM.java
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/sun_nio/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,53 @@
+#
+# Copyright (c) 2003, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for sun/nio files
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.nio
+PRODUCT = sun
+
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files to compile.
+#
+include FILES_java.gmk
+
+#
+# Install .lib file.
+#
+INSTALL_DOT_LIB = true
+
+include $(BUILDDIR)/common/Classes.gmk
+
+clean:: 
+	$(RM) -r $(CLASSHDRDIR)
+clobber:: 
+	$(RM) -r $(CLASSBINDIR)/sun/nio/cs 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/util/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,41 @@
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_java = \
+        sun/util/resources/LocaleData.java \
+        sun/util/resources/OpenListResourceBundle.java \
+        sun/util/resources/LocaleNamesBundle.java \
+        sun/util/resources/TimeZoneNamesBundle.java \
+        sun/util/resources/TimeZoneNames.java \
+        sun/util/resources/TimeZoneNames_de.java \
+        sun/util/resources/TimeZoneNames_en.java \
+        sun/util/resources/TimeZoneNames_en_CA.java \
+        sun/util/resources/TimeZoneNames_en_GB.java \
+        sun/util/resources/TimeZoneNames_en_IE.java \
+        sun/util/resources/TimeZoneNames_es.java \
+        sun/util/resources/TimeZoneNames_fr.java \
+        sun/util/resources/TimeZoneNames_it.java \
+        sun/util/resources/TimeZoneNames_pt_BR.java \
+        sun/util/resources/TimeZoneNames_sv.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/util/FILES_properties.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,213 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_compiled_properties = \
+        sun/util/resources/LocaleNames.properties \
+        sun/util/resources/LocaleNames_be.properties \
+        sun/util/resources/LocaleNames_bg.properties \
+        sun/util/resources/LocaleNames_ca.properties \
+        sun/util/resources/LocaleNames_cs.properties \
+        sun/util/resources/LocaleNames_da.properties \
+        sun/util/resources/LocaleNames_de.properties \
+        sun/util/resources/LocaleNames_el.properties \
+        sun/util/resources/LocaleNames_el_CY.properties \
+        sun/util/resources/LocaleNames_en.properties \
+        sun/util/resources/LocaleNames_en_MT.properties \
+        sun/util/resources/LocaleNames_en_PH.properties \
+        sun/util/resources/LocaleNames_en_SG.properties \
+        sun/util/resources/LocaleNames_es.properties \
+        sun/util/resources/LocaleNames_es_US.properties \
+        sun/util/resources/LocaleNames_et.properties \
+        sun/util/resources/LocaleNames_fi.properties \
+        sun/util/resources/LocaleNames_fr.properties \
+        sun/util/resources/LocaleNames_ga.properties \
+        sun/util/resources/LocaleNames_hr.properties \
+        sun/util/resources/LocaleNames_hu.properties \
+        sun/util/resources/LocaleNames_in.properties \
+        sun/util/resources/LocaleNames_is.properties \
+        sun/util/resources/LocaleNames_it.properties \
+        sun/util/resources/LocaleNames_lt.properties \
+        sun/util/resources/LocaleNames_lv.properties \
+        sun/util/resources/LocaleNames_mk.properties \
+        sun/util/resources/LocaleNames_ms.properties \
+        sun/util/resources/LocaleNames_mt.properties \
+        sun/util/resources/LocaleNames_nl.properties \
+        sun/util/resources/LocaleNames_no.properties \
+        sun/util/resources/LocaleNames_no_NO_NY.properties \
+        sun/util/resources/LocaleNames_pl.properties \
+        sun/util/resources/LocaleNames_pt.properties \
+        sun/util/resources/LocaleNames_pt_BR.properties \
+        sun/util/resources/LocaleNames_pt_PT.properties \
+        sun/util/resources/LocaleNames_ro.properties \
+        sun/util/resources/LocaleNames_ru.properties \
+        sun/util/resources/LocaleNames_sk.properties \
+        sun/util/resources/LocaleNames_sl.properties \
+        sun/util/resources/LocaleNames_sq.properties \
+        sun/util/resources/LocaleNames_sr.properties \
+        sun/util/resources/LocaleNames_sr_Latn.properties \
+        sun/util/resources/LocaleNames_sv.properties \
+        sun/util/resources/LocaleNames_tr.properties \
+        sun/util/resources/LocaleNames_uk.properties \
+	\
+        sun/util/resources/CalendarData.properties \
+        sun/util/resources/CalendarData_be.properties \
+        sun/util/resources/CalendarData_bg.properties \
+        sun/util/resources/CalendarData_ca.properties \
+        sun/util/resources/CalendarData_cs.properties \
+        sun/util/resources/CalendarData_da.properties \
+        sun/util/resources/CalendarData_de.properties \
+        sun/util/resources/CalendarData_el.properties \
+        sun/util/resources/CalendarData_el_CY.properties \
+        sun/util/resources/CalendarData_en.properties \
+        sun/util/resources/CalendarData_en_GB.properties \
+        sun/util/resources/CalendarData_en_IE.properties \
+        sun/util/resources/CalendarData_en_MT.properties \
+        sun/util/resources/CalendarData_es.properties \
+        sun/util/resources/CalendarData_es_ES.properties \
+        sun/util/resources/CalendarData_es_US.properties \
+        sun/util/resources/CalendarData_et.properties \
+        sun/util/resources/CalendarData_fi.properties \
+        sun/util/resources/CalendarData_fr.properties \
+        sun/util/resources/CalendarData_fr_CA.properties \
+        sun/util/resources/CalendarData_hr.properties \
+        sun/util/resources/CalendarData_hu.properties \
+        sun/util/resources/CalendarData_in_ID.properties \
+        sun/util/resources/CalendarData_is.properties \
+        sun/util/resources/CalendarData_it.properties \
+        sun/util/resources/CalendarData_lt.properties \
+        sun/util/resources/CalendarData_lv.properties \
+        sun/util/resources/CalendarData_mk.properties \
+        sun/util/resources/CalendarData_ms_MY.properties \
+        sun/util/resources/CalendarData_mt.properties \
+        sun/util/resources/CalendarData_mt_MT.properties \
+        sun/util/resources/CalendarData_nl.properties \
+        sun/util/resources/CalendarData_no.properties \
+        sun/util/resources/CalendarData_pl.properties \
+        sun/util/resources/CalendarData_pt.properties \
+        sun/util/resources/CalendarData_pt_PT.properties \
+        sun/util/resources/CalendarData_ro.properties \
+        sun/util/resources/CalendarData_ru.properties \
+        sun/util/resources/CalendarData_sk.properties \
+        sun/util/resources/CalendarData_sl.properties \
+        sun/util/resources/CalendarData_sq.properties \
+        sun/util/resources/CalendarData_sr.properties \
+        sun/util/resources/CalendarData_sr_Latn_BA.properties \
+        sun/util/resources/CalendarData_sr_Latn_ME.properties \
+        sun/util/resources/CalendarData_sr_Latn_RS.properties \
+        sun/util/resources/CalendarData_sv.properties \
+        sun/util/resources/CalendarData_tr.properties \
+        sun/util/resources/CalendarData_uk.properties \
+	\
+        sun/util/resources/CurrencyNames.properties \
+        sun/util/resources/CurrencyNames_be_BY.properties \
+        sun/util/resources/CurrencyNames_bg_BG.properties \
+        sun/util/resources/CurrencyNames_ca_ES.properties \
+        sun/util/resources/CurrencyNames_cs_CZ.properties \
+        sun/util/resources/CurrencyNames_da_DK.properties \
+        sun/util/resources/CurrencyNames_de.properties \
+        sun/util/resources/CurrencyNames_de_AT.properties \
+        sun/util/resources/CurrencyNames_de_CH.properties \
+        sun/util/resources/CurrencyNames_de_DE.properties \
+        sun/util/resources/CurrencyNames_de_GR.properties \
+        sun/util/resources/CurrencyNames_de_LU.properties \
+        sun/util/resources/CurrencyNames_el_CY.properties \
+        sun/util/resources/CurrencyNames_el_GR.properties \
+        sun/util/resources/CurrencyNames_en_AU.properties \
+        sun/util/resources/CurrencyNames_en_CA.properties \
+        sun/util/resources/CurrencyNames_en_GB.properties \
+        sun/util/resources/CurrencyNames_en_IE.properties \
+        sun/util/resources/CurrencyNames_en_IN.properties \
+        sun/util/resources/CurrencyNames_en_MT.properties \
+        sun/util/resources/CurrencyNames_en_NZ.properties \
+        sun/util/resources/CurrencyNames_en_PH.properties \
+        sun/util/resources/CurrencyNames_en_SG.properties \
+        sun/util/resources/CurrencyNames_en_US.properties \
+        sun/util/resources/CurrencyNames_en_ZA.properties \
+        sun/util/resources/CurrencyNames_es.properties \
+        sun/util/resources/CurrencyNames_es_AR.properties \
+        sun/util/resources/CurrencyNames_es_BO.properties \
+        sun/util/resources/CurrencyNames_es_CL.properties \
+        sun/util/resources/CurrencyNames_es_CO.properties \
+        sun/util/resources/CurrencyNames_es_CR.properties \
+        sun/util/resources/CurrencyNames_es_CU.properties \
+        sun/util/resources/CurrencyNames_es_DO.properties \
+        sun/util/resources/CurrencyNames_es_EC.properties \
+        sun/util/resources/CurrencyNames_es_ES.properties \
+        sun/util/resources/CurrencyNames_es_GT.properties \
+        sun/util/resources/CurrencyNames_es_HN.properties \
+        sun/util/resources/CurrencyNames_es_MX.properties \
+        sun/util/resources/CurrencyNames_es_NI.properties \
+        sun/util/resources/CurrencyNames_es_PA.properties \
+        sun/util/resources/CurrencyNames_es_PE.properties \
+        sun/util/resources/CurrencyNames_es_PR.properties \
+        sun/util/resources/CurrencyNames_es_PY.properties \
+        sun/util/resources/CurrencyNames_es_SV.properties \
+        sun/util/resources/CurrencyNames_es_US.properties \
+        sun/util/resources/CurrencyNames_es_UY.properties \
+        sun/util/resources/CurrencyNames_es_VE.properties \
+        sun/util/resources/CurrencyNames_et_EE.properties \
+        sun/util/resources/CurrencyNames_fi_FI.properties \
+        sun/util/resources/CurrencyNames_fr.properties \
+        sun/util/resources/CurrencyNames_fr_BE.properties \
+        sun/util/resources/CurrencyNames_fr_CA.properties \
+        sun/util/resources/CurrencyNames_fr_CH.properties \
+        sun/util/resources/CurrencyNames_fr_FR.properties \
+        sun/util/resources/CurrencyNames_fr_LU.properties \
+        sun/util/resources/CurrencyNames_ga_IE.properties \
+        sun/util/resources/CurrencyNames_hr_HR.properties \
+        sun/util/resources/CurrencyNames_hu_HU.properties \
+        sun/util/resources/CurrencyNames_in_ID.properties \
+        sun/util/resources/CurrencyNames_is_IS.properties \
+        sun/util/resources/CurrencyNames_it.properties \
+        sun/util/resources/CurrencyNames_it_CH.properties \
+        sun/util/resources/CurrencyNames_it_IT.properties \
+        sun/util/resources/CurrencyNames_lt_LT.properties \
+        sun/util/resources/CurrencyNames_lv_LV.properties \
+        sun/util/resources/CurrencyNames_mk_MK.properties \
+        sun/util/resources/CurrencyNames_ms_MY.properties \
+        sun/util/resources/CurrencyNames_mt_MT.properties \
+        sun/util/resources/CurrencyNames_nl_BE.properties \
+        sun/util/resources/CurrencyNames_nl_NL.properties \
+        sun/util/resources/CurrencyNames_no_NO.properties \
+        sun/util/resources/CurrencyNames_pl_PL.properties \
+        sun/util/resources/CurrencyNames_pt.properties \
+        sun/util/resources/CurrencyNames_pt_BR.properties \
+        sun/util/resources/CurrencyNames_pt_PT.properties \
+        sun/util/resources/CurrencyNames_ro_RO.properties \
+        sun/util/resources/CurrencyNames_ru_RU.properties \
+        sun/util/resources/CurrencyNames_sk_SK.properties \
+        sun/util/resources/CurrencyNames_sl_SI.properties \
+        sun/util/resources/CurrencyNames_sq_AL.properties \
+        sun/util/resources/CurrencyNames_sr_BA.properties \
+        sun/util/resources/CurrencyNames_sr_CS.properties \
+        sun/util/resources/CurrencyNames_sr_ME.properties \
+        sun/util/resources/CurrencyNames_sr_RS.properties \
+        sun/util/resources/CurrencyNames_sr_Latn_BA.properties \
+        sun/util/resources/CurrencyNames_sr_Latn_ME.properties \
+        sun/util/resources/CurrencyNames_sr_Latn_RS.properties \
+        sun/util/resources/CurrencyNames_sv.properties \
+        sun/util/resources/CurrencyNames_sv_SE.properties \
+        sun/util/resources/CurrencyNames_tr_TR.properties \
+        sun/util/resources/CurrencyNames_uk_UA.properties
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/util/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for sun.util.resources that don't need
+# to be part of the bootstrap build.
+#
+
+BUILDDIR = ../..
+
+PACKAGE = java.util.resources
+PRODUCT = java
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+
+#  Adds more files than before?: AUTO_FILES_JAVA_DIRS=sun/util/resources
+include FILES_java.gmk
+
+#  Adds more files than before?: AUTO_FILES_PROPERTIES_DIRS=sun/util/resources
+include FILES_properties.gmk
+
+#
+# Compile properties
+#
+COMPILED_PROPERTIES_SUPERCLASS=LocaleNamesBundle
+
+#
+# Include
+#
+include $(BUILDDIR)/common/Classes.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/verify/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,70 @@
+#
+# Copyright (c) 1999, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Build libverify.so
+#
+
+BUILDDIR = ../..
+PRODUCT = java
+LIBRARY = verify
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Link to libjvm so JVM_ functions can be called.
+#
+OTHER_LDLIBS += $(JVMLIB)
+
+ifeq ($(PLATFORM), windows)
+  #
+  # Don't want JAVALIB
+  #
+  JAVALIB = 
+  EXTRA_LIBS = 
+endif
+
+#
+# Files to compile.
+#
+FILES_c = \
+	check_code.c \
+	check_format.c
+
+#
+# Targets.
+#
+ifeq ($(PLATFORM), solaris)
+  ifneq ($(ARCH), amd64)
+    FILES_reorder += reorder-$(ARCH)
+  endif
+endif
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient VPATH.
+#
+vpath %.c   $(SHARE_SRC)/native/common
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/verify/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2000, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+ 
+SUNWprivate_1.1 {
+   global:
+           VerifyClass;
+           VerifyClassForMajorVersion;
+           VerifyClassname;
+           VerifyFixClassname;
+   local:
+           *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/verify/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,40 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%skip_over_field_signature: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%VerifyClass;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%class_name_to_ID: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%free_block: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Exit
+# Test Hello
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%isAssignableTo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Sleep
+text: .text%isLegalTarget: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%copy_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%ntohl: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/verify/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%VerifyClass;
+text: .text%CCinit: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_class_hash;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%instruction_length: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_exception_table: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_and_free: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%finalize_class_hash: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%CCdestroy: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Exit
+# Test Hello
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%verify_field: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_and_push: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_args_size: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/java/verify/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%next_utf2unicode: OUTPUTDIR/tmp/java/verify/obj64/check_format.o;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj64/check_format.o;
+text: .text%VerifyClass;
+text: .text%CCinit: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_class_hash;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%instruction_length: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%check_and_push: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%pop_and_free: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_exception_table: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%finalize_class_hash: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%CCdestroy: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%verify_field: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%signature_to_args_size: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,54 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building javax
+#
+
+BUILDDIR = ..
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = 
+
+SUBDIRS_management = management
+
+SUBDIRS_misc = \
+        crypto \
+        sql 
+ 
+
+# imageio uses xml, so build it last
+SUBDIRS_desktop = \
+        swing \
+        sound \
+        imageio
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build:
+	$(SUBDIRS-loop)
+clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/Defs-jce.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,105 @@
+#
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include $(BUILDDIR)/common/Release.gmk
+
+#
+# Include these extra attributes for now, should probably take out.
+#
+JCE_MANIFEST_FILE    = $(TEMPDIR)/manifest.mf
+$(JCE_MANIFEST_FILE): $(MAINMANIFEST)
+	$(prep-target)
+	$(SED) -e "s#@@RELEASE@@#$(RELEASE)#"           \
+               -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
+               $(MAINMANIFEST) >> $@
+	$(ECHO) "Extension-Name: javax.crypto" >> $@
+	$(ECHO) "Implementation-Vendor-Id: com.sun" >> $@
+
+README-MAKEFILE_WARNING = \
+    "\nPlease read make/javax/crypto/Makefile for further build instructions."
+
+define no-source-warning
+	@$(ECHO) "\n***JCE sources are not available, skipping build.***" \
+	    $(README-MAKEFILE_WARNING)
+endef
+
+ifndef OPENJDK
+
+PREBUILT_DIR = $(JDK_TOPDIR)/make/closed/tools/crypto
+
+define build-warning
+	@$(ECHO) "\n***JCE in JDK builds require special tools/procedures.***" \
+	    $(README-MAKEFILE_WARNING)
+endef
+
+#
+# Location for JCE codesigning key.
+#
+SIGNING_KEY_DIR    = /security/ws/JCE-signing/src
+SIGNING_KEYSTORE   = $(SIGNING_KEY_DIR)/KeyStore.jks
+SIGNING_PASSPHRASE = $(SIGNING_KEY_DIR)/passphrase.txt
+SIGNING_ALIAS      = oracle_jce_rsa
+
+#
+# Defines for signing the various jar files.
+#
+
+define presign
+    @if [ ! -f $(SIGNING_KEYSTORE) -o ! -f $(SIGNING_PASSPHRASE) ]; then \
+	$(ECHO) "\n$(SIGNING_KEYSTORE): Signing mechanism *NOT* available..." \
+	    $(README-MAKEFILE_WARNING); \
+	exit 2; \
+    fi
+endef
+
+define sign-target
+	$(BOOT_JARSIGNER_CMD) -keystore $(SIGNING_KEYSTORE) \
+	    $@ $(SIGNING_ALIAS) < $(SIGNING_PASSPHRASE)
+	@$(java-vm-cleanup)
+	@$(ECHO) "\nJar codesigning finished."
+endef
+
+RELEASE_DIR = $(OUTPUTDIR)/jce-release
+
+define release-warning
+	@$(ECHO) \
+	    "\n***The jar files built by the 'release' target must***" \
+	    "\n***still be checked into the closed workspace!     ***" \
+	    $(README-MAKEFILE_WARNING)
+endef
+
+#
+# Convenience macros for signing a jar file.
+#
+# Call through $(call sign-file, target file)
+#
+define sign-file
+	$(presign)
+	$(prep-target)
+	$(CP) $1 $@
+	$(sign-target)
+endef
+
+endif  # !OPENJDK
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,484 @@
+#
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building jce.jar and the various cryptographic strength
+# policy jar files.
+#
+
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Sun JDK builds
+# respectively.)
+#
+# JCE builds are very different between OpenJDK and JDK.  The OpenJDK JCE
+# jar files do not require signing, but those for JDK do.  If an unsigned
+# jar file is installed into JDK, things will break when the crypto
+# routines are called.
+#
+# This Makefile does the "real" build of the JCE files.  There are some
+# javac options currently specific to JCE, so we recompile now to make
+# sure any implicit compilations didn't use any incorrect flags.
+#
+# For OpenJDK, the jar files built here are installed directly into the
+# OpenJDK.
+#
+# For JDK, the binaries use pre-built/pre-signed binary files stored in
+# the closed workspace that are not shipped in the OpenJDK workspaces.
+# We still build the JDK files here to verify the files compile, and in
+# preparation for possible signing.  Developers working on JCE in JDK
+# must sign the JCE files before testing.  The JCE signing key is kept
+# separate from the JDK workspace to prevent its disclosure.
+#
+# SPECIAL NOTE TO JCE/JDK developers:  The source files must eventually
+# be built and signed, and the resulting jar files *MUST BE CHECKED INTO
+# THE CLOSED PART OF THE WORKSPACE*.  This separate step *MUST NOT BE
+# FORGOTTEN*, otherwise a bug fixed in the source code will not be
+# reflected in the shipped binaries.  The "release" target should be
+# used to generate the required files.
+#
+# There are a number of targets to help both JDK/OpenJDK developers.
+#
+# Main Targets (JDK/OPENJDK):
+#
+#     all/clobber/clean        The usual.
+#                                  If OpenJDK: builds/installs the
+#                                      jce.jar/limited policy files.
+#                                  If JDK: builds but does not install.
+#                                     During full tops-down builds,
+#                                     prebuilt/presigned jce.jar &
+#                                     limited policy files are copied
+#                                     in by make/java/redist/Makefile.
+#                                     If you are working in this directory
+#                                     and want to install the prebuilts,
+#                                     use the "install-prebuilt" target.
+#
+#     jar                      Builds/installs jce.jar
+#                                  If OpenJDK, does not sign
+#                                  If JDK, tries to sign
+#
+# Other lesser-used Targets (JDK/OPENJDK):
+#
+#     build-jar                Builds jce.jar (does not sign/install)
+#
+#     build-policy             Builds policy files (does not sign/install)
+#
+#     install-jar              Alias for "jar" above
+#
+#     install-limited          Builds/installs limited policy files
+#                                  If OpenJDK, does not sign
+#                                  If JDK, tries to sign
+#     install-unlimited        Builds/nstalls unlimited policy files
+#                                  If OpenJDK, does not sign
+#                                  If JDK, tries to sign
+#
+# Other targets (JDK only):
+#
+#     sign                     Alias for sign-jar and sign-policy
+#          sign-jar            Builds/signs jce.jar file (no install)
+#          sign-policy         Builds/signs policy files (no install)
+#
+#     release                  Builds all targets in preparation
+#                              for workspace integration.
+#
+#     install-prebuilt         Installs the pre-built jar files
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../..
+PACKAGE = javax.crypto
+PRODUCT = sun
+
+#
+# The following is for when we need to do postprocessing
+# (signing) against a read-only build.  If the OUTPUTDIR
+# isn't writable, the build currently crashes out.
+#
+ifndef OPENJDK
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+endif
+
+JAVAC_MAX_WARNINGS = true
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Location for the newly built classfiles.
+#
+CLASSDESTDIR = $(TEMPDIR)/classes
+
+#
+# Subdirectories of these are automatically included.
+#
+AUTO_FILES_JAVA_DIRS = \
+    javax/crypto \
+    sun/security/internal/interfaces \
+    sun/security/internal/spec
+
+include $(BUILDDIR)/common/Classes.gmk
+
+#
+# Rules
+#
+
+#
+# Some licensees do not get the security sources, but we still need to
+# be able to build "all" for them.  Check here to see if the sources were
+# available.  If not, then we don't need to continue this rule.
+#
+
+ifdef OPENJDK
+all: build-jar install-jar build-policy install-limited
+else  # OPENJDK
+ifeq ($(strip $(FILES_java)),)
+all:
+	$(no-source-warning)
+else  # FILES_java/policy files available
+all: build-jar build-policy
+	$(build-warning)
+endif # $(FILES_java)/policy files available
+endif # OPENJDK
+
+#
+# We use a variety of subdirectories in the $(TEMPDIR) depending on what
+# part of the build we're doing.  Both OPENJDK/JDK builds are initially
+# done in the unsigned area.  When files are signed in JDK, they will be
+# placed in the appropriate areas.
+#
+UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+include Defs-jce.gmk
+
+
+# =====================================================
+# Build the unsigned jce.jar file.  Signing comes later.
+#
+
+JAR_DESTFILE = $(LIBDIR)/jce.jar
+
+#
+# JCE building is somewhat involved.
+#
+# OpenJDK:  Since we do not ship prebuilt JCE files, previous compiles
+# in the build may have needed JCE class signatures.  There were then
+# implicitly built by javac (likely using the boot javac).  While using
+# those class files was fine for signatures, we need to rebuild using
+# the right compiler.
+#
+# JDK:  Even through the jce.jar was previously installed, since the
+# source files are accessible in the source directories, they will
+# always be "newer" than the prebuilt files inside the jar, and thus
+# make will always rebuild them.  (We could "hide" the JCE source in a
+# separate directory, but that would make the build logic for JDK and
+# OpenJDK more complicated.)
+#
+# Thus in either situation, we shouldn't use these files.
+#
+# To make sure the classes were built with the right compiler options,
+# delete the existing files in $(CLASSBINDIR), rebuild the right way in a
+# directory under $(TEMPDIR), then copy the files back to
+# $(CLASSBINDIR).   Building in $(TEMPDIR) allows us to use our make
+# infrastructure without modification:  .classes.list, macros, etc.
+#
+
+#
+# The list of directories that will be remade from scratch, using the
+# right compilers/options.
+#
+DELETE_DIRS = $(patsubst %, $(CLASSBINDIR)/%, $(AUTO_FILES_JAVA_DIRS))
+
+#
+# Since the -C option to jar is used below, each directory entry must be
+# preceded with the appropriate directory to "cd" into.
+#
+JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+build-jar: $(UNSIGNED_DIR)/jce.jar
+
+#
+# Build jce.jar, then replace the previously built JCE files in the
+# classes directory with these.  This ensures we have consistently built
+# files throughout the workspaces.
+#
+$(UNSIGNED_DIR)/jce.jar: prebuild build $(JCE_MANIFEST_FILE)
+	$(prep-target)
+	$(BOOT_JAR_CMD) cmf $(JCE_MANIFEST_FILE) $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	$(CP) -r $(CLASSDESTDIR)/* $(CLASSBINDIR)
+	@$(java-vm-cleanup)
+
+build: prebuild
+
+prebuild:
+	$(RM) -r $(DELETE_DIRS)
+
+
+# =====================================================
+# Build the unsigned policy files.
+#
+# Given the current state of world export/import policies,
+# these settings work for Sun's situation.  This note is not
+# legal guidance, you must still resolve any export/import issues
+# applicable for your situation.  Contact your export/import
+# counsel for more information.
+#
+
+POLICY_DESTDIR			= $(LIBDIR)/security
+UNSIGNED_POLICY_BUILDDIR	= $(UNSIGNED_DIR)/policy
+
+build-policy: unlimited limited
+
+#
+# Build the unsigned unlimited policy files.
+#
+unlimited: \
+	    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar	\
+	    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar
+
+$(UNSIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar:		\
+	    policy/unlimited/default_US_export.policy			\
+	    policy/unlimited/UNLIMITED
+	$(prep-target)
+	$(BOOT_JAR_CMD) cmf policy/unlimited/UNLIMITED $@		\
+	    -C policy/unlimited default_US_export.policy		\
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+$(UNSIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar:			\
+	    policy/unlimited/default_local.policy			\
+	    policy/unlimited/UNLIMITED
+	$(prep-target)
+	$(BOOT_JAR_CMD) cmf policy/unlimited/UNLIMITED $@		\
+	    -C policy/unlimited default_local.policy			\
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+#
+# Build the unsigned limited policy files.
+#
+# NOTE:  We currently do not place restrictions on our limited export
+# policy.  This was not a typo.
+#
+limited: \
+	    $(UNSIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar	\
+	    $(UNSIGNED_POLICY_BUILDDIR)/limited/local_policy.jar
+
+$(UNSIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar:		\
+	    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar
+	$(install-file)
+
+$(UNSIGNED_POLICY_BUILDDIR)/limited/local_policy.jar:			\
+	    policy/limited/default_local.policy				\
+	    policy/limited/exempt_local.policy				\
+	    policy/limited/LIMITED
+	$(prep-target)
+	$(BOOT_JAR_CMD) cmf policy/limited/LIMITED $@			\
+	    -C policy/limited default_local.policy			\
+	    -C policy/limited exempt_local.policy			\
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+UNSIGNED_POLICY_FILES = \
+    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar		\
+    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar		\
+    $(UNSIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar		\
+    $(UNSIGNED_POLICY_BUILDDIR)/limited/local_policy.jar		\
+
+
+ifndef OPENJDK
+# =====================================================
+# Sign the various jar files.  Not needed for OpenJDK.
+#
+
+SIGNED_DIR		= $(JCE_BUILD_DIR)/signed
+SIGNED_POLICY_BUILDDIR	= $(SIGNED_DIR)/policy
+
+SIGNED_POLICY_FILES = \
+    $(patsubst $(UNSIGNED_POLICY_BUILDDIR)/%,$(SIGNED_POLICY_BUILDDIR)/%, \
+	$(UNSIGNED_POLICY_FILES))
+
+sign: sign-jar sign-policy
+
+sign-jar: $(SIGNED_DIR)/jce.jar
+
+sign-policy: $(SIGNED_POLICY_FILES)
+
+ifndef ALT_JCE_BUILD_DIR
+$(SIGNED_DIR)/jce.jar: $(UNSIGNED_DIR)/jce.jar
+else
+#
+# We have to remove the build dependency, otherwise, we'll try to rebuild it
+# which we can't do on a read-only filesystem.
+#
+$(SIGNED_DIR)/jce.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/jce.jar ] ; then \
+	    $(ECHO) "Couldn't find $(UNSIGNED_DIR)/jce.jar"; \
+	    exit 1; \
+	fi
+endif
+	$(call sign-file, $(UNSIGNED_DIR)/jce.jar)
+
+$(SIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar:	\
+	    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar
+	$(call sign-file, $<)
+
+$(SIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar:		\
+	    $(UNSIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar
+	$(call sign-file, $<)
+
+$(SIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar:		\
+	    $(UNSIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar
+	$(call sign-file, $<)
+
+$(SIGNED_POLICY_BUILDDIR)/limited/local_policy.jar:		\
+	    $(UNSIGNED_POLICY_BUILDDIR)/limited/local_policy.jar
+	$(call sign-file, $<)
+
+
+# =====================================================
+# Create the Release Engineering files.  Signed builds,
+# unlimited policy file distribution, etc.
+#
+
+CLOSED_DIR = $(BUILDDIR)/closed/javax/crypto
+
+release: $(SIGNED_DIR)/jce.jar sign-policy $(CLOSED_DIR)/doc/README.txt
+	$(RM) -r \
+	    $(JCE_BUILD_DIR)/release/UnlimitedJCEPolicy              \
+	    $(JCE_BUILD_DIR)/release/jce.jar                         \
+	    $(JCE_BUILD_DIR)/release/US_export_policy.jar            \
+	    $(JCE_BUILD_DIR)/release/local_policy.jar                \
+	    $(JCE_BUILD_DIR)/release/UnlimitedJCEPolicy.zip
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release/UnlimitedJCEPolicy
+	$(CP) $(SIGNED_DIR)/jce.jar $(JCE_BUILD_DIR)/release
+	$(CP) \
+	    $(SIGNED_POLICY_BUILDDIR)/limited/US_export_policy.jar   \
+	    $(SIGNED_POLICY_BUILDDIR)/limited/local_policy.jar       \
+	    $(JCE_BUILD_DIR)/release
+	$(CP) \
+	    $(SIGNED_POLICY_BUILDDIR)/unlimited/US_export_policy.jar \
+	    $(SIGNED_POLICY_BUILDDIR)/unlimited/local_policy.jar     \
+	    $(CLOSED_DIR)/doc/README.txt                             \
+	    $(JCE_BUILD_DIR)/release/UnlimitedJCEPolicy
+	cd $(JCE_BUILD_DIR)/release ; \
+	$(ZIPEXE) -qr UnlimitedJCEPolicy.zip UnlimitedJCEPolicy
+	$(release-warning)
+
+endif # OPENJDK
+
+
+# =====================================================
+# Install routines.
+#
+
+#
+# Install jce.jar, depending on which type is requested.
+#
+install-jar jar: $(JAR_DESTFILE)
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifdef OPENJDK
+$(JAR_DESTFILE): $(UNSIGNED_DIR)/jce.jar
+else
+$(JAR_DESTFILE): $(SIGNED_DIR)/jce.jar
+endif
+	$(install-file)
+
+#
+# Install the appropriate policy file, depending on the type of build.
+#
+ifdef OPENJDK
+INSTALL_POLICYDIR = $(UNSIGNED_POLICY_BUILDDIR)
+else
+INSTALL_POLICYDIR = $(SIGNED_POLICY_BUILDDIR)
+endif
+
+install-limited-jars: \
+	    $(INSTALL_POLICYDIR)/limited/US_export_policy.jar	\
+	    $(INSTALL_POLICYDIR)/limited/local_policy.jar
+	$(MKDIR) -p $(POLICY_DESTDIR)
+	$(RM) \
+	    $(POLICY_DESTDIR)/US_export_policy.jar		\
+	    $(POLICY_DESTDIR)/local_policy.jar
+	$(CP) $^ $(POLICY_DESTDIR)
+
+install-limited: install-limited-jars
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+install-unlimited-jars: \
+	    $(INSTALL_POLICYDIR)/unlimited/US_export_policy.jar	\
+	    $(INSTALL_POLICYDIR)/unlimited/local_policy.jar 
+	$(MKDIR) -p $(POLICY_DESTDIR)
+	$(RM) \
+	    $(POLICY_DESTDIR)/US_export_policy.jar		\
+	    $(POLICY_DESTDIR)/local_policy.jar
+	$(CP) $^ $(POLICY_DESTDIR)
+
+install-unlimited: install-unlimited-jars
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifndef OPENJDK
+install-prebuilt-jars:
+	@$(ECHO) "\n>>>Installing prebuilt JCE framework..."
+	$(RM) $(JAR_DESTFILE) \
+	    $(POLICY_DESTDIR)/US_export_policy.jar \
+	    $(POLICY_DESTDIR)/local_policy.jar
+	$(CP) $(PREBUILT_DIR)/jce/jce.jar $(JAR_DESTFILE)
+	$(CP) \
+	    $(PREBUILT_DIR)/jce/US_export_policy.jar \
+	    $(PREBUILT_DIR)/jce/local_policy.jar \
+	    $(POLICY_DESTDIR)
+
+install-prebuilt: install-prebuilt-jars
+endif
+
+# =====================================================
+# Support routines.
+#
+
+clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(POLICY_DESTDIR)/US_export_policy.jar \
+	    $(POLICY_DESTDIR)/local_policy.jar $(DELETE_DIRS) $(TEMPDIR) \
+	    $(JCE_BUILD_DIR)
+
+.PHONY: build-jar jar build-policy unlimited limited install-jar \
+	install-limited install-unlimited
+ifndef OPENJDK
+.PHONY: sign sign-jar sign-policy release install-prebuilt
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/limited/LIMITED	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1 @@
+Crypto-Strength: limited
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/limited/default_local.policy	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,14 @@
+// Some countries have import limits on crypto strength. This policy file
+// is worldwide importable.
+
+grant {
+    permission javax.crypto.CryptoPermission "DES", 64;
+    permission javax.crypto.CryptoPermission "DESede", *;
+    permission javax.crypto.CryptoPermission "RC2", 128, 
+                                     "javax.crypto.spec.RC2ParameterSpec", 128;
+    permission javax.crypto.CryptoPermission "RC4", 128;
+    permission javax.crypto.CryptoPermission "RC5", 128, 
+          "javax.crypto.spec.RC5ParameterSpec", *, 12, *;
+    permission javax.crypto.CryptoPermission "RSA", *;
+    permission javax.crypto.CryptoPermission *, 128;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/limited/exempt_local.policy	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,13 @@
+// Some countries have import limits on crypto strength. So this file
+// will be useful.
+
+grant {
+    // There is no restriction to any algorithms if KeyRecovery is enforced.
+    permission javax.crypto.CryptoPermission *, "KeyRecovery"; 
+
+    // There is no restriction to any algorithms if KeyEscrow is enforced.
+    permission javax.crypto.CryptoPermission *, "KeyEscrow"; 
+
+    // There is no restriction to any algorithms if KeyWeakening is enforced. 
+    permission javax.crypto.CryptoPermission *, "KeyWeakening";
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/unlimited/UNLIMITED	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1 @@
+Crypto-Strength: unlimited
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/unlimited/default_US_export.policy	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,5 @@
+// Manufacturing policy file.
+grant {
+    // There is no restriction to any algorithms.
+    permission javax.crypto.CryptoAllPermission; 
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/crypto/policy/unlimited/default_local.policy	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,5 @@
+// Country-specific policy file for countries with no limits on crypto strength.
+grant {
+    // There is no restriction to any algorithms.
+    permission javax.crypto.CryptoAllPermission; 
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/imageio/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,56 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of JIIO (Java Image I/O) API
+#
+
+BUILDDIR = ../..
+PACKAGE = javax.imageio
+PRODUCT = jiio
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files to compile
+#
+AUTO_FILES_JAVA_DIRS = javax/imageio com/sun/imageio 
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+OTHER_PROPERTIES = com/sun/imageio/plugins/common/iio-plugin.properties
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+build: copy-files
+
+copy-files: $(FILES_copy)
+
+.PHONY: copy-files
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/management/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,53 @@
+#
+# Copyright (c) 2003, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of JMX
+#
+
+BUILDDIR = ../..
+PACKAGE = javax.management
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files to compile
+#
+AUTO_JAVA_PRUNE = snmp
+AUTO_FILES_JAVA_DIRS = javax/management com/sun/jmx com/sun/management/jmx 
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+#
+# Clean up internal-use-only package.
+#
+clean clobber::
+	$(RM) -r $(CLASSDESTDIR)/com/sun/jmx \
+                 $(CLASSDESTDIR)/com/sun/management/jmx \
+                 $(CLASSDESTDIR)/org/omg/stub/javax/management/remote/rmi \
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,57 @@
+#
+# Copyright (c) 1999, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	Utilities.c \
+	Platform.c
+
+FILES_solaris = \
+	PLATFORM_API_SolarisOS_Utils.c \
+	PLATFORM_API_SolarisOS_Ports.c \
+	PLATFORM_API_SolarisOS_PCM.c
+
+FILES_linux = 
+
+FILES_bsd =
+
+FILES_macosx = \
+    PLATFORM_API_MacOSX_MidiIn.c \
+    PLATFORM_API_MacOSX_MidiOut.c \
+    PLATFORM_API_MacOSX_MidiUtils.c
+
+FILES_cpp_macosx = \
+    PLATFORM_API_MacOSX_Utils.cpp \
+    PLATFORM_API_MacOSX_PCM.cpp \
+    PLATFORM_API_MacOSX_Ports.cpp
+
+FILES_windows = \
+	PLATFORM_API_WinOS_MidiIn.c \
+	PLATFORM_API_WinOS_MidiOut.c \
+	PLATFORM_API_WinOS_Util.c \
+	PLATFORM_API_WinOS_Ports.c
+
+FILES_export = \
+	com/sun/media/sound/Platform.java
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,224 @@
+#
+# Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = javax.sound
+LIBRARY = jsound
+PRODUCT = sun
+
+ifeq ($(PLATFORM),macosx)
+CPLUSPLUSLIBRARY = true
+endif
+
+include $(BUILDDIR)/common/Defs.gmk
+
+# include defines for sound
+include SoundDefs.gmk
+
+# support for different mixer provider files on different platforms
+#MXSP = javax.sound.sampled.spi.MixerProvider
+# Mixer Service Provider Additional path
+#MXSPP_ADD =
+
+#
+# Add use of mapfile
+#
+FILES_m = mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+# add java files
+AUTO_FILES_JAVA_DIRS = javax/sound com/sun/media/sound
+
+#
+# Files that just need cp.
+#
+SERVICEDIR = $(CLASSBINDIR)/META-INF/services
+
+FILES_copy = \
+	$(SERVICEDIR)/javax.sound.midi.spi.MidiDeviceProvider \
+	$(SERVICEDIR)/javax.sound.midi.spi.MidiFileWriter \
+	$(SERVICEDIR)/javax.sound.midi.spi.MidiFileReader \
+	$(SERVICEDIR)/javax.sound.midi.spi.SoundbankReader \
+	$(SERVICEDIR)/javax.sound.sampled.spi.AudioFileWriter \
+	$(SERVICEDIR)/javax.sound.sampled.spi.AudioFileReader \
+	$(SERVICEDIR)/javax.sound.sampled.spi.FormatConversionProvider \
+	$(SERVICEDIR)/javax.sound.sampled.spi.MixerProvider \
+	$(LIBDIR)/sound.properties
+
+FILES_mkdirs = \
+	$(CLASSBINDIR)/META-INF \
+	$(CLASSBINDIR)/META-INF/services
+
+FILES_copydirs = \
+	$(CLASSBINDIR) \
+	$(LIBDIR) \
+	$(FILES_mkdirs)
+
+FILES_c += $(FILES_$(PLATFORM))
+FILES_cpp += $(FILES_cpp_$(PLATFORM))
+
+
+#
+# system dependent flags
+#
+ifeq ($(PLATFORM), windows)
+  CPPFLAGS += 	-DUSE_PLATFORM_MIDI_OUT=TRUE \
+		-DUSE_PLATFORM_MIDI_IN=TRUE \
+		-DUSE_PORTS=TRUE
+  LDLIBS += winmm.lib
+
+  # Windows always provides MIDI and ports
+  INCLUDE_MIDI  = TRUE
+  INCLUDE_PORTS = TRUE
+
+  # DirectSound handles directaudio (both i586 and amd64)
+  SUBDIRS += jsoundds
+  EXTRA_SOUND_JNI_LIBS += jsoundds
+  #MXSPP_ADD = $(PLATFORM)-$(ARCH)/
+endif # PLATFORM win32
+
+ifeq ($(PLATFORM), linux)
+  # ALSA handles directaudio, ports, and MIDI
+  SUBDIRS += jsoundalsa
+  EXTRA_SOUND_JNI_LIBS += jsoundalsa
+  #MXSPP_ADD = $(PLATFORM)-$(ARCH)/
+endif # PLATFORM linux
+
+ifeq ($(PLATFORM), macosx)
+  CPPFLAGS += -DUSE_PORTS=TRUE \
+              -DUSE_DAUDIO=TRUE \
+              -DUSE_PLATFORM_MIDI_OUT=TRUE \
+              -DUSE_PLATFORM_MIDI_IN=TRUE
+
+  INCLUDE_PORTS = TRUE
+  INCLUDE_DAUDIO = TRUE
+  INCLUDE_MIDI = TRUE
+
+  LDFLAGS += -framework CoreAudio -framework CoreFoundation \
+             -framework CoreServices -framework AudioUnit -lstdc++ \
+             -framework CoreMIDI -framework AudioToolbox
+  CXXFLAGS += -I`xcode-select -print-path`/Extras/CoreAudio/PublicUtility
+endif
+
+ifeq ($(PLATFORM), solaris)
+  # build with ports and direct audio
+  CPPFLAGS += -DUSE_PORTS=TRUE 	\
+              -DUSE_DAUDIO=TRUE
+
+  INCLUDE_PORTS = TRUE
+  INCLUDE_DAUDIO = TRUE
+  # build with empty MIDI i/o
+  INCLUDE_MIDI = TRUE
+endif # PLATFORM solaris
+
+# for dynamic inclusion of extra sound libs: these
+# JNI libs will be loaded from Platform.java
+CPPFLAGS += -DEXTRA_SOUND_JNI_LIBS='"$(EXTRA_SOUND_JNI_LIBS)"'
+
+# integrate MIDI i/o in jsound lib
+ifeq ($(INCLUDE_MIDI),TRUE)
+  FILES_c += $(MIDIFILES_c)
+  FILES_export += $(MIDIFILES_export)
+endif
+
+# integrate port files in jsound lib
+ifeq ($(INCLUDE_PORTS),TRUE)
+  FILES_c += $(PORTFILES_c)
+  FILES_export += $(PORTFILES_export)
+endif
+
+# integrate port files in jsound lib
+ifeq ($(INCLUDE_DAUDIO),TRUE)
+  FILES_c += $(DAUDIOFILES_c)
+  FILES_export += $(DAUDIOFILES_export)
+endif
+
+#
+# Extra cc/linker flags.
+#
+CPPFLAGS += \
+	-I$(SHARE_SRC)/native/com/sun/media/sound
+
+ifeq ($(PLATFORM), macosx)
+vpath %.c   $(call NativeSrcDirList,,native/com/sun/media/sound)
+vpath %.cpp $(call NativeSrcDirList,,native/com/sun/media/sound)
+
+else
+#
+# Add to the ambient VPATH.
+#
+vpath %.c $(SHARE_SRC)/native/com/sun/media/sound
+vpath %.c $(PLATFORM_SRC)/native/com/sun/media/sound
+vpath %.cpp $(PLATFORM_SRC)/native/com/sun/media/sound
+
+endif
+
+#
+# Include rules
+#
+include $(BUILDDIR)/common/Library.gmk
+include $(BUILDDIR)/common/Subdirs.gmk
+
+#
+# Rules that copy files.
+#
+
+build: copy-files
+	$(SUBDIRS-loop)
+
+copy-files: $(FILES_copy)
+
+#$(SERVICEDIR)/$(MXSP): $(SHARE_SRC)/classes/com/sun/media/sound/services/$(MXSPP_ADD)$(MXSP)
+#	$(install-file)
+
+$(SERVICEDIR)/%: $(SHARE_SRC)/classes/com/sun/media/sound/services/%
+	$(install-file)
+
+$(LIBDIR)/audio/%: $(SHARE_SRC)/lib/audio/%
+	$(install-file)
+
+$(LIBDIR)/%: $(SHARE_SRC)/lib/%
+	$(install-file)
+
+#
+# Since we build more than the javax.sound (as stated in the
+# PACKAGE variable), we need to nuke the extra packages explicitly.
+#
+clean clobber::
+	$(SUBDIRS-loop)
+
+clean clobber::
+	$(RM) -r $(CLASSBINDIR)/com/sun/media/sound $(LIBDIR)/audio
+	$(RM) $(FILES_copy)
+
+#
+# Declare extra phony targets.
+#
+.PHONY: copy-files
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/SoundDefs.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,124 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# defines common for all Java Sound native code
+
+SUBDIRS=
+EXTRA_SOUND_JNI_LIBS=
+
+#
+# Extra cc/linker flags.
+#
+# system dependent flags
+ifeq ($(PLATFORM), windows)
+  CPPFLAGS += -DX_PLATFORM=X_WINDOWS
+endif # PLATFORM windows
+
+ifeq ($(PLATFORM), linux)
+  CPPFLAGS += -DX_PLATFORM=X_LINUX
+endif # PLATFORM linux
+
+ifeq ($(PLATFORM), macosx)
+  CPPFLAGS += -DX_PLATFORM=X_MACOSX
+endif # PLATFORM macosx
+
+ifeq ($(PLATFORM), solaris)
+  CPPFLAGS += -DX_PLATFORM=X_SOLARIS
+
+  # Solaris needs specific binding to libc
+  LDFLAGS += -lc
+
+  #
+  # Turn off C++ exception handling.
+  #
+  ifneq ($(CC_VERSION),gcc)
+    CXXFLAGS += -noex
+  endif # CC_VERSION
+
+endif # PLATFORM solaris
+
+ifeq ($(ZERO_BUILD), true)
+  CPPFLAGS += -DX_ARCH=X_ZERO
+else
+  ifeq ($(ARCH), i586)
+    CPPFLAGS += -DX_ARCH=X_I586
+  endif # ARCH i586
+
+  ifeq ($(ARCH), sparc)
+    CPPFLAGS += -DX_ARCH=X_SPARC
+  endif # ARCH sparc
+
+  ifeq ($(ARCH), sparcv9)
+    CPPFLAGS += -DX_ARCH=X_SPARCV9
+  endif # ARCH sparcv9
+
+  ifeq ($(ARCH), amd64)
+    CPPFLAGS += -DX_ARCH=X_AMD64
+  endif # ARCH amd64
+
+  ifeq ($(ARCH), arm)
+    CPPFLAGS += -DX_ARCH=X_ARM
+  endif # ARCH arm
+
+  ifeq ($(ARCH), ppc)
+    CPPFLAGS += -DX_ARCH=X_PPC
+  endif # ARCH ppc
+
+endif
+
+
+# files needed for MIDI i/o
+MIDIFILES_c = \
+	MidiInDevice.c \
+	MidiInDeviceProvider.c \
+	MidiOutDevice.c \
+	MidiOutDeviceProvider.c \
+	PlatformMidi.c
+
+MIDIFILES_export = \
+	com/sun/media/sound/MidiInDevice.java \
+	com/sun/media/sound/MidiInDeviceProvider.java \
+	com/sun/media/sound/MidiOutDevice.java \
+	com/sun/media/sound/MidiOutDeviceProvider.java
+
+# files needed for ports
+PORTFILES_c = \
+	PortMixerProvider.c \
+	PortMixer.c
+
+PORTFILES_export = \
+	com/sun/media/sound/PortMixer.java \
+	com/sun/media/sound/PortMixerProvider.java
+
+# files needed for direct audio
+DAUDIOFILES_c = \
+	DirectAudioDeviceProvider.c \
+	DirectAudioDevice.c
+
+DAUDIOFILES_export = \
+	com/sun/media/sound/DirectAudioDeviceProvider.java \
+	com/sun/media/sound/DirectAudioDevice.java
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/jsoundalsa/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,91 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = javax.sound
+LIBRARY = jsoundalsa
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+# this Makefile compiles the native files for alsa support in java sound
+
+# include defines for sound
+include ../SoundDefs.gmk
+
+#
+# Use mapfile
+#
+FILES_m = mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files
+#
+
+FILES_c = \
+	Utilities.c \
+	$(DAUDIOFILES_c) \
+	$(MIDIFILES_c) \
+	$(PORTFILES_c)
+
+# platform dependent files
+FILES_c += \
+	PLATFORM_API_LinuxOS_ALSA_CommonUtils.c   \
+	PLATFORM_API_LinuxOS_ALSA_PCM.c     \
+	PLATFORM_API_LinuxOS_ALSA_PCMUtils.c   \
+	PLATFORM_API_LinuxOS_ALSA_MidiIn.c  \
+	PLATFORM_API_LinuxOS_ALSA_MidiOut.c \
+	PLATFORM_API_LinuxOS_ALSA_MidiUtils.c \
+	PLATFORM_API_LinuxOS_ALSA_Ports.c
+
+FILES_export = \
+	$(DAUDIOFILES_export) \
+	$(MIDIFILES_export) \
+	$(PORTFILES_export)
+
+OTHER_LDLIBS += -lasound
+
+CPPFLAGS += \
+	-DUSE_DAUDIO=TRUE \
+	-DUSE_PORTS=TRUE  \
+	-DUSE_PLATFORM_MIDI_OUT=TRUE \
+	-DUSE_PLATFORM_MIDI_IN=TRUE \
+	-I$(SHARE_SRC)/native/com/sun/media/sound
+
+#
+# Add to the ambient VPATH.
+#
+vpath %.c $(SHARE_SRC)/native/com/sun/media/sound
+vpath %.c $(PLATFORM_SRC)/native/com/sun/media/sound
+vpath %.cpp $(PLATFORM_SRC)/native/com/sun/media/sound
+
+
+#
+# Include rules
+#
+include $(BUILDDIR)/common/Library.gmk
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/jsoundalsa/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,82 @@
+#
+# Copyright (c) 2005, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+            Java_com_sun_media_sound_DirectAudioDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_DirectAudioDeviceProvider_nNewDirectAudioDeviceInfo;
+            Java_com_sun_media_sound_DirectAudioDevice_nAvailable;
+            Java_com_sun_media_sound_DirectAudioDevice_nClose;
+            Java_com_sun_media_sound_DirectAudioDevice_nFlush;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetBufferSize;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetBytePosition;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetFormats;
+            Java_com_sun_media_sound_DirectAudioDevice_nIsStillDraining;
+            Java_com_sun_media_sound_DirectAudioDevice_nOpen;
+            Java_com_sun_media_sound_DirectAudioDevice_nRead;
+            Java_com_sun_media_sound_DirectAudioDevice_nRequiresServicing;
+            Java_com_sun_media_sound_DirectAudioDevice_nService;
+            Java_com_sun_media_sound_DirectAudioDevice_nSetBytePosition;
+            Java_com_sun_media_sound_DirectAudioDevice_nStart;
+            Java_com_sun_media_sound_DirectAudioDevice_nStop;
+            Java_com_sun_media_sound_DirectAudioDevice_nWrite;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetDescription;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetName;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetVendor;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetVersion;
+            Java_com_sun_media_sound_MidiInDevice_nClose;
+            Java_com_sun_media_sound_MidiInDevice_nGetMessages;
+            Java_com_sun_media_sound_MidiInDevice_nGetTimeStamp;
+            Java_com_sun_media_sound_MidiInDevice_nOpen;
+            Java_com_sun_media_sound_MidiInDevice_nStart;
+            Java_com_sun_media_sound_MidiInDevice_nStop;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetDescription;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetName;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetVendor;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetVersion;
+            Java_com_sun_media_sound_MidiOutDevice_nClose;
+            Java_com_sun_media_sound_MidiOutDevice_nGetTimeStamp;
+            Java_com_sun_media_sound_MidiOutDevice_nOpen;
+            Java_com_sun_media_sound_MidiOutDevice_nSendLongMessage;
+            Java_com_sun_media_sound_MidiOutDevice_nSendShortMessage;
+            Java_com_sun_media_sound_PortMixerProvider_nGetNumDevices;
+            Java_com_sun_media_sound_PortMixerProvider_nNewPortMixerInfo;
+            Java_com_sun_media_sound_PortMixer_nClose;
+            Java_com_sun_media_sound_PortMixer_nControlGetFloatValue;
+            Java_com_sun_media_sound_PortMixer_nControlGetIntValue;
+            Java_com_sun_media_sound_PortMixer_nControlSetFloatValue;
+            Java_com_sun_media_sound_PortMixer_nControlSetIntValue;
+            Java_com_sun_media_sound_PortMixer_nGetControls;
+            Java_com_sun_media_sound_PortMixer_nGetPortCount;
+            Java_com_sun_media_sound_PortMixer_nGetPortName;
+            Java_com_sun_media_sound_PortMixer_nGetPortType;
+            Java_com_sun_media_sound_PortMixer_nOpen;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/jsoundds/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,71 @@
+#
+# Copyright (c) 2003, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = javax.sound
+LIBRARY = jsoundds
+PRODUCT = sun
+CPLUSPLUSLIBRARY = true
+include $(BUILDDIR)/common/Defs.gmk
+
+# this Makefile compiles the native files for DirectSound support in java sound
+
+# include defines for sound
+include ../SoundDefs.gmk
+
+#
+# Files
+#
+
+FILES_c = \
+	Utilities.c \
+	$(DAUDIOFILES_c)
+
+FILES_cpp = \
+	PLATFORM_API_WinOS_DirectSound.cpp
+
+FILES_export = \
+	$(DAUDIOFILES_export)
+
+#
+# Extra cc/linker flags.
+#
+LDLIBS += dsound.lib winmm.lib user32.lib ole32.lib
+CPPFLAGS += \
+	-DUSE_DAUDIO=TRUE \
+	-I$(SHARE_SRC)/native/com/sun/media/sound \
+	-I$(DXSDK_INCLUDE_PATH)
+
+#
+# Add to the ambient VPATH.
+#
+vpath %.c $(SHARE_SRC)/native/com/sun/media/sound
+vpath %.c $(PLATFORM_SRC)/native/com/sun/media/sound
+vpath %.cpp $(PLATFORM_SRC)/native/com/sun/media/sound
+
+#
+# Include rules
+#
+include $(BUILDDIR)/common/Library.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sound/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,86 @@
+#
+# Copyright (c) 2005, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+            Java_com_sun_media_sound_DirectAudioDevice_nAvailable;
+            Java_com_sun_media_sound_DirectAudioDevice_nClose;
+            Java_com_sun_media_sound_DirectAudioDevice_nFlush;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetBufferSize;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetBytePosition;
+            Java_com_sun_media_sound_DirectAudioDevice_nGetFormats;
+            Java_com_sun_media_sound_DirectAudioDevice_nIsStillDraining;
+            Java_com_sun_media_sound_DirectAudioDevice_nOpen;
+            Java_com_sun_media_sound_DirectAudioDevice_nRead;
+            Java_com_sun_media_sound_DirectAudioDevice_nRequiresServicing;
+            Java_com_sun_media_sound_DirectAudioDevice_nService;
+            Java_com_sun_media_sound_DirectAudioDevice_nSetBytePosition;
+            Java_com_sun_media_sound_DirectAudioDevice_nStart;
+            Java_com_sun_media_sound_DirectAudioDevice_nStop;
+            Java_com_sun_media_sound_DirectAudioDevice_nWrite;
+            Java_com_sun_media_sound_DirectAudioDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_DirectAudioDeviceProvider_nNewDirectAudioDeviceInfo;
+            Java_com_sun_media_sound_MidiInDevice_nClose;
+            Java_com_sun_media_sound_MidiInDevice_nGetMessages;
+            Java_com_sun_media_sound_MidiInDevice_nGetTimeStamp;
+            Java_com_sun_media_sound_MidiInDevice_nOpen;
+            Java_com_sun_media_sound_MidiInDevice_nStart;
+            Java_com_sun_media_sound_MidiInDevice_nStop;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetDescription;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetName;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetVendor;
+            Java_com_sun_media_sound_MidiInDeviceProvider_nGetVersion;
+            Java_com_sun_media_sound_MidiOutDevice_nClose;
+            Java_com_sun_media_sound_MidiOutDevice_nGetTimeStamp;
+            Java_com_sun_media_sound_MidiOutDevice_nOpen;
+            Java_com_sun_media_sound_MidiOutDevice_nSendLongMessage;
+            Java_com_sun_media_sound_MidiOutDevice_nSendShortMessage;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetDescription;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetName;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetNumDevices;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetVendor;
+            Java_com_sun_media_sound_MidiOutDeviceProvider_nGetVersion;
+            Java_com_sun_media_sound_Platform_nGetExtraLibraries;
+            Java_com_sun_media_sound_Platform_nGetLibraryForFeature;
+            Java_com_sun_media_sound_Platform_nIsBigEndian;
+            Java_com_sun_media_sound_Platform_nIsSigned8;
+            Java_com_sun_media_sound_PortMixer_nClose;
+            Java_com_sun_media_sound_PortMixer_nControlGetFloatValue;
+            Java_com_sun_media_sound_PortMixer_nControlGetIntValue;
+            Java_com_sun_media_sound_PortMixer_nControlSetFloatValue;
+            Java_com_sun_media_sound_PortMixer_nControlSetIntValue;
+            Java_com_sun_media_sound_PortMixer_nGetControls;
+            Java_com_sun_media_sound_PortMixer_nGetPortCount;
+            Java_com_sun_media_sound_PortMixer_nGetPortName;
+            Java_com_sun_media_sound_PortMixer_nGetPortType;
+            Java_com_sun_media_sound_PortMixer_nOpen;
+            Java_com_sun_media_sound_PortMixerProvider_nGetNumDevices;
+            Java_com_sun_media_sound_PortMixerProvider_nNewPortMixerInfo;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/sql/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,49 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building JDBC API and JDBC RowSet
+#
+
+BUILDDIR = ../..
+PACKAGE = javax.sql
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files to compile.
+#
+AUTO_FILES_JAVA_DIRS = javax/sql
+
+# 
+# Resources
+#
+OTHER_PROPERTIES  = $(PKGDIR)/rowset/rowset.properties
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/FILES.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,235 @@
+#
+# Copyright (c) 1998, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+MISC_FILES = \
+        $(CLASSBINDIR)/javax/swing/text/html/default.css 			\
+        $(CLASSBINDIR)/javax/swing/text/rtf/charsets/NeXT.txt 			\
+        $(CLASSBINDIR)/javax/swing/text/rtf/charsets/ansi.txt 			\
+        $(CLASSBINDIR)/javax/swing/text/rtf/charsets/cpg437.txt 		\
+        $(CLASSBINDIR)/javax/swing/text/rtf/charsets/cpg850.txt 		\
+        $(CLASSBINDIR)/javax/swing/text/rtf/charsets/mac.txt
+
+BEANINFO_DOC = \
+	$(BUILDDIR)/tools/swing-beans/SwingBeanInfo.template
+
+BEANIMAGES   = $(BUILDDIR)/tools/swing-beans/beaninfo/images
+BEANINFO_IMG = \
+	$(BEANIMAGES)/AbstractButtonColor16.gif \
+	$(BEANIMAGES)/BorderColor16.gif \
+	$(BEANIMAGES)/JAppletColor16.gif \
+	$(BEANIMAGES)/JAppletColor32.gif \
+	$(BEANIMAGES)/JAppletMono16.gif \
+	$(BEANIMAGES)/JAppletMono32.gif \
+	$(BEANIMAGES)/JButtonColor32.gif \
+	$(BEANIMAGES)/JButtonColor16.gif \
+	$(BEANIMAGES)/JButtonMono32.gif \
+	$(BEANIMAGES)/JButtonMono16.gif \
+	$(BEANIMAGES)/JCheckBoxColor32.gif \
+	$(BEANIMAGES)/JCheckBoxColor16.gif \
+	$(BEANIMAGES)/JCheckBoxMono32.gif \
+	$(BEANIMAGES)/JCheckBoxMono16.gif \
+	$(BEANIMAGES)/JCheckBoxMenuItemColor32.gif \
+	$(BEANIMAGES)/JCheckBoxMenuItemColor16.gif \
+	$(BEANIMAGES)/JCheckBoxMenuItemMono32.gif \
+	$(BEANIMAGES)/JCheckBoxMenuItemMono16.gif \
+	$(BEANIMAGES)/JComboBoxColor32.gif \
+	$(BEANIMAGES)/JComboBoxColor16.gif \
+	$(BEANIMAGES)/JComboBoxMono32.gif \
+	$(BEANIMAGES)/JComboBoxMono16.gif \
+	$(BEANIMAGES)/JComponentColor16.gif \
+	$(BEANIMAGES)/JDesktopPaneColor32.gif \
+	$(BEANIMAGES)/JDesktopPaneColor16.gif \
+	$(BEANIMAGES)/JDesktopPaneMono32.gif \
+	$(BEANIMAGES)/JDesktopPaneMono16.gif \
+	$(BEANIMAGES)/JDialogColor32.gif \
+	$(BEANIMAGES)/JDialogColor16.gif \
+	$(BEANIMAGES)/JDialogMono16.gif \
+	$(BEANIMAGES)/JDialogMono32.gif \
+	$(BEANIMAGES)/JEditorPaneColor32.gif \
+	$(BEANIMAGES)/JEditorPaneColor16.gif \
+	$(BEANIMAGES)/JEditorPaneMono32.gif \
+	$(BEANIMAGES)/JEditorPaneMono16.gif \
+	$(BEANIMAGES)/JFrameColor32.gif \
+	$(BEANIMAGES)/JFrameColor16.gif \
+	$(BEANIMAGES)/JFrameMono32.gif \
+	$(BEANIMAGES)/JFrameMono16.gif \
+	$(BEANIMAGES)/JInternalFrameColor32.gif \
+	$(BEANIMAGES)/JInternalFrameColor16.gif \
+	$(BEANIMAGES)/JInternalFrameMono32.gif \
+	$(BEANIMAGES)/JInternalFrameMono16.gif \
+	$(BEANIMAGES)/JLabelColor32.gif \
+	$(BEANIMAGES)/JLabelColor16.gif \
+	$(BEANIMAGES)/JLabelMono32.gif \
+	$(BEANIMAGES)/JLabelMono16.gif \
+	$(BEANIMAGES)/JLayeredPaneColor32.gif \
+	$(BEANIMAGES)/JLayeredPaneColor16.gif \
+	$(BEANIMAGES)/JLayeredPaneMono32.gif \
+	$(BEANIMAGES)/JLayeredPaneMono16.gif \
+	$(BEANIMAGES)/JListColor32.gif \
+	$(BEANIMAGES)/JListColor16.gif \
+	$(BEANIMAGES)/JListMono32.gif \
+	$(BEANIMAGES)/JListMono16.gif \
+        $(BEANIMAGES)/JMenuBarColor32.gif \
+        $(BEANIMAGES)/JMenuBarColor16.gif \
+        $(BEANIMAGES)/JMenuBarMono32.gif \
+        $(BEANIMAGES)/JMenuBarMono16.gif \
+        $(BEANIMAGES)/JMenuColor32.gif \
+        $(BEANIMAGES)/JMenuColor16.gif \
+        $(BEANIMAGES)/JMenuMono32.gif \
+        $(BEANIMAGES)/JMenuMono16.gif \
+        $(BEANIMAGES)/JMenuItemColor32.gif \
+        $(BEANIMAGES)/JMenuItemColor16.gif \
+        $(BEANIMAGES)/JMenuItemMono32.gif \
+        $(BEANIMAGES)/JMenuItemMono16.gif \
+        $(BEANIMAGES)/JPanelColor32.gif \
+        $(BEANIMAGES)/JPanelColor16.gif \
+        $(BEANIMAGES)/JPanelMono32.gif \
+        $(BEANIMAGES)/JPanelMono16.gif \
+        $(BEANIMAGES)/JPasswordFieldColor32.gif \
+        $(BEANIMAGES)/JPasswordFieldColor16.gif \
+        $(BEANIMAGES)/JPasswordFieldMono32.gif \
+        $(BEANIMAGES)/JPasswordFieldMono16.gif \
+	$(BEANIMAGES)/JPopupMenuColor32.gif \
+	$(BEANIMAGES)/JPopupMenuColor16.gif \
+	$(BEANIMAGES)/JPopupMenuMono32.gif \
+	$(BEANIMAGES)/JPopupMenuMono16.gif \
+	$(BEANIMAGES)/JProgressBarColor32.gif \
+	$(BEANIMAGES)/JProgressBarColor16.gif \
+	$(BEANIMAGES)/JProgressBarMono32.gif \
+	$(BEANIMAGES)/JProgressBarMono16.gif \
+	$(BEANIMAGES)/JRadioButtonColor32.gif \
+	$(BEANIMAGES)/JRadioButtonColor16.gif \
+	$(BEANIMAGES)/JRadioButtonMono32.gif \
+	$(BEANIMAGES)/JRadioButtonMono16.gif \
+	$(BEANIMAGES)/JRadioButtonMenuItemColor32.gif \
+	$(BEANIMAGES)/JRadioButtonMenuItemColor16.gif \
+	$(BEANIMAGES)/JRadioButtonMenuItemMono32.gif \
+	$(BEANIMAGES)/JRadioButtonMenuItemMono16.gif \
+	$(BEANIMAGES)/JRootPaneColor32.gif \
+	$(BEANIMAGES)/JRootPaneColor16.gif \
+	$(BEANIMAGES)/JRootPaneMono32.gif \
+	$(BEANIMAGES)/JRootPaneMono16.gif \
+	$(BEANIMAGES)/JScrollPaneColor32.gif \
+	$(BEANIMAGES)/JScrollPaneColor16.gif \
+	$(BEANIMAGES)/JScrollPaneMono32.gif \
+	$(BEANIMAGES)/JScrollPaneMono16.gif \
+	$(BEANIMAGES)/JScrollBarColor32.gif \
+	$(BEANIMAGES)/JScrollBarColor16.gif \
+	$(BEANIMAGES)/JScrollBarMono32.gif \
+	$(BEANIMAGES)/JScrollBarMono16.gif \
+	$(BEANIMAGES)/JSeparatorColor32.gif \
+	$(BEANIMAGES)/JSeparatorColor16.gif \
+	$(BEANIMAGES)/JSeparatorMono32.gif \
+	$(BEANIMAGES)/JSeparatorMono16.gif \
+	$(BEANIMAGES)/JSliderColor32.gif \
+	$(BEANIMAGES)/JSliderColor16.gif \
+	$(BEANIMAGES)/JSliderMono32.gif \
+	$(BEANIMAGES)/JSliderMono16.gif \
+	$(BEANIMAGES)/JTextPaneColor32.gif \
+	$(BEANIMAGES)/JTextPaneColor16.gif \
+	$(BEANIMAGES)/JTextPaneMono32.gif \
+	$(BEANIMAGES)/JTextPaneMono16.gif \
+	$(BEANIMAGES)/JToggleButtonColor32.gif \
+	$(BEANIMAGES)/JToggleButtonColor16.gif \
+	$(BEANIMAGES)/JToggleButtonMono32.gif \
+	$(BEANIMAGES)/JToggleButtonMono16.gif \
+        $(BEANIMAGES)/JToolBarColor32.gif \
+        $(BEANIMAGES)/JToolBarColor16.gif \
+        $(BEANIMAGES)/JToolBarMono32.gif \
+        $(BEANIMAGES)/JToolBarMono16.gif \
+        $(BEANIMAGES)/JTabbedPaneColor32.gif \
+        $(BEANIMAGES)/JTabbedPaneColor16.gif \
+        $(BEANIMAGES)/JTabbedPaneMono32.gif \
+        $(BEANIMAGES)/JTabbedPaneMono16.gif \
+        $(BEANIMAGES)/JTreeColor32.gif \
+        $(BEANIMAGES)/JTreeColor16.gif \
+        $(BEANIMAGES)/JTreeMono32.gif \
+        $(BEANIMAGES)/JTreeMono16.gif \
+	$(BEANIMAGES)/JTextAreaColor32.gif \
+	$(BEANIMAGES)/JTextAreaColor16.gif \
+	$(BEANIMAGES)/JTextAreaMono32.gif \
+	$(BEANIMAGES)/JTextAreaMono16.gif \
+        $(BEANIMAGES)/JTextFieldColor32.gif \
+        $(BEANIMAGES)/JTextFieldColor16.gif \
+        $(BEANIMAGES)/JTextFieldMono32.gif \
+        $(BEANIMAGES)/JTextFieldMono16.gif \
+        $(BEANIMAGES)/JViewportColor32.gif \
+        $(BEANIMAGES)/JViewportColor16.gif \
+        $(BEANIMAGES)/JViewportMono32.gif \
+        $(BEANIMAGES)/JViewportMono16.gif \
+        $(BEANIMAGES)/JWindowColor32.gif \
+        $(BEANIMAGES)/JWindowColor16.gif \
+        $(BEANIMAGES)/JWindowMono32.gif \
+        $(BEANIMAGES)/JWindowMono16.gif \
+	$(BEANIMAGES)/JTableColor32.gif \
+	$(BEANIMAGES)/JTableColor16.gif \
+	$(BEANIMAGES)/JTableMono32.gif \
+	$(BEANIMAGES)/JTableMono16.gif
+
+BEANS = \
+	AbstractButton \
+	JComponent
+
+# These classes get listed in the swingall.jar manifest file and are
+# used during BeanInfo source generation.
+BEANS_MANIFEST = \
+	JApplet \
+	JButton \
+	JCheckBox \
+	JCheckBoxMenuItem \
+	JComboBox \
+	JDialog \
+	JEditorPane \
+	JFrame \
+	JInternalFrame \
+	JLabel \
+	JList \
+	JMenu \
+	JMenuBar \
+	JMenuItem \
+	JOptionPane \
+	JPanel \
+	JPasswordField \
+	JPopupMenu \
+	JProgressBar \
+	JRadioButton \
+	JRadioButtonMenuItem \
+	JRootPane \
+	JScrollBar \
+	JScrollPane \
+	JSeparator \
+	JSlider \
+	JSpinner \
+	JSplitPane \
+	JTabbedPane \
+	JTable \
+	JTextArea \
+	JTextField \
+	JTextPane \
+	JToggleButton \
+	JToolBar \
+	JTree \
+	JViewport \
+	JWindow
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,63 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR  = ../..
+PACKAGE   = javax.swing
+PRODUCT   = com
+SWING_SRC = $(SHARE_SRC)/classes/javax/swing
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES.gmk
+AUTO_FILES_JAVA_DIRS = javax/swing sun/swing com/sun/java/swing
+AUTO_JAVA_PRUNE = plaf
+
+SUBDIRS = html32dtd plaf
+
+include $(BUILDDIR)/common/Classes.gmk
+include $(BUILDDIR)/common/Subdirs.gmk
+
+build: other_files
+	$(SUBDIRS-loop)
+
+clean clobber::
+	$(SUBDIRS-loop)
+
+other_files: $(MISC_FILES)
+
+$(CLASSBINDIR)/%.wav: $(SHARE_SRC)/classes/%.wav
+	$(install-file)
+
+$(CLASSBINDIR)/%.gif: $(SHARE_SRC)/classes/%.gif
+	$(install-file)
+
+$(CLASSBINDIR)/%.css: $(SHARE_SRC)/classes/%.css
+	$(install-file)
+
+$(CLASSBINDIR)/%.txt: $(SHARE_SRC)/classes/%.txt
+	$(install-file)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/beaninfo/FILES.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,126 @@
+#
+# Copyright (c) 1998, 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# There are the Swing classes for which a BeanInfo class is generated.
+#
+
+# this is used for solaris
+
+BEANS	    = AbstractButton	\
+          Box           \
+	      JComponent	\
+	      JApplet		\
+	      JButton		\
+	      JCheckBox		\
+	      JCheckBoxMenuItem	\
+	      JComboBox		\
+	      JColorChooser	\
+          JDesktopPane  \
+	      JDialog	\
+	      JEditorPane	\
+	      JFileChooser	\
+	      JFrame		\
+	      JFormattedTextField \
+	      JInternalFrame	\
+	      JLabel		\
+          JLayeredPane  \
+	      JList		\
+	      JMenu		\
+	      JMenuBar		\
+	      JMenuItem		\
+	      JOptionPane	\
+	      JPanel		\
+	      JPasswordField	\
+	      JPopupMenu	\
+	      JProgressBar	\
+	      JRadioButton	\
+	      JRadioButtonMenuItem\
+	      JScrollBar	\
+	      JScrollPane	\
+	      JSeparator	\
+	      JSlider		\
+	      JSplitPane	\
+	      JSpinner		\
+	      JTabbedPane	\
+	      JTable		\
+	      JTextArea		\
+	      JTextField	\
+	      JTextPane		\
+	      JToggleButton	\
+	      JToolBar		\
+	      JTree		\
+	      JWindow
+
+# in a separate package
+BEANS_TEXT = JTextComponent  	\
+
+# and this is used for windows
+
+BEANS_SOURCES = ..\..\..\..\..\src\share\classes\javax\swing\AbstractButton.java \
+	        ..\..\..\..\..\src\share\classes\javax\swing\Box.java	\
+	        ..\..\..\..\..\src\share\classes\javax\swing\JComponent.java	\
+	        ..\..\..\..\..\src\share\classes\javax\swing\JColorChooser.java	\
+		..\..\..\..\..\src\share\classes\javax\swing\JApplet.java		\
+		..\..\..\..\..\src\share\classes\javax\swing\JButton.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JCheckBox.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JCheckBoxMenuItem.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JComboBox.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JDesktopPane.java    \
+	      ..\..\..\..\..\src\share\classes\javax\swing\JDialog.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JEditorPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JFileChooser.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JFormattedTextField.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JFrame.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JInternalFrame.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JLabel.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JLayeredPane.java \
+	      ..\..\..\..\..\src\share\classes\javax\swing\JList.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JMenu.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JMenuBar.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JMenuItem.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JOptionPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JPanel.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JPasswordField.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JPopupMenu.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JProgressBar.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JRadioButton.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JRadioButtonMenuItem.java \
+	      ..\..\..\..\..\src\share\classes\javax\swing\JScrollBar.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JScrollPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JSeparator.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JSlider.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JSpinner.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JSplitPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTabbedPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTable.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTextArea.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\text\JTextComponent.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTextField.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTextPane.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JToggleButton.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JToolBar.java	\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JTree.java		\
+	      ..\..\..\..\..\src\share\classes\javax\swing\JWindow.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/beaninfo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,38 @@
+#
+# Copyright (c) 1998, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Create 1.1 version of BeanInfo files needed by Swing.
+#
+# Note that this makefile gets visited only during release engineering
+# time.
+#
+
+BUILDDIR = ../../..
+include $(BUILDDIR)/common/Defs.gmk
+include SwingBeans.gmk
+
+all build: swing-1.2-beans
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/beaninfo/SwingBeans.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,205 @@
+#
+# Copyright (c) 1998, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile to build the BeanInfo generation tool (ie, a doclet), and
+# then the beaninfo itself.  Swing versions prior to 1.2 are no longer
+# built.
+#
+# This makefile could be a lot simpler if we made it more regular.
+#
+
+# identify this as a swingbeans product - used only to identify a
+# unique name for OBJDIR
+PRODUCT = swing-beans
+
+#
+# Main targets provided by this makefile.
+# 
+swing-1.2-beans:
+	$(MAKE) DEBUG_FLAG=false make-swing-beans
+swing-1.2-beans-debug:
+	$(MAKE) DEBUG_FLAG=true make-swing-beans
+
+
+# get the absolute path to the jar command.
+PREFIX          = 1.2
+JAVADOCFLAGS    += $(NO_PROPRIETARY_API_WARNINGS) $(LANGUAGE_VERSION)
+SWINGPKG        = javax/swing
+LOCAL_JAVAC_FLAGS = $(OTHER_JAVACFLAGS)
+# since JAVADOC_CMD runs on ALT_BOOTDIR, the doclet and all its classes must be compiled to match
+DOCLET_JAVAC_FLAGS = -source 6 -target 6
+
+include FILES.gmk
+include $(BUILDDIR)/common/Release.gmk
+
+DOCLETSRC    = $(BUILDDIR)/../make/tools/swing-beans
+DOCLETDST    = $(TEMPDIR)
+
+FILES_java   = GenSwingBeanInfo.java GenDocletBeanInfo.java DocBeanInfo.java
+FILES_class  = $(FILES_java:%.java=$(DOCLETDST)/%.class)
+FAKESRC	     = $(JDK_TOPDIR)/src/share/classes
+BEANSRCDIR  =  $(TEMPDIR)/$(PREFIX)src
+BEANCLASSDIR = $(TEMPDIR)/$(PREFIX)classes
+FILES_beans =  $(BEANS:%=$(BEANSRCDIR)/%BeanInfo.java) \
+	       $(BEANS_TEXT:%=$(BEANSRCDIR)/text/%BeanInfo.java)  \
+	       $(BEANSRCDIR)/SwingBeanInfoBase.java \
+	       $(BEANSRCDIR)/BeanInfoUtils.java
+               
+FILES_bclass = $(FILES_beans:$(BEANSRCDIR)/%.java=$(BEANCLASSDIR)/$(SWINGPKG)/%.class)
+DOCLETFLAGS  = -doclet GenDocletBeanInfo
+LOCAL_CLASSPATH = "$(CLASSBINDIR)$(CLASSPATH_SEPARATOR)$(BEANCLASSDIR)$(CLASSPATH_SEPARATOR)."
+
+#
+# Main target.
+#
+make-swing-beans: mkdoclet mkbeaninfo mkclasses mkpackaging
+
+#
+# Make the doclet.
+#
+mkdoclet: $(DOCLETDST) $(FILES_class) .SwingBeanInfo
+
+$(OBJDIR) $(BEANCLASSDIR) $(BEANSRCDIR) $(DOCLETDST)::
+	@$(ECHO) "Making directory..." $@
+	@$(MKDIR) -p $@
+
+$(DOCLETDST)/%.class: $(DOCLETSRC)/%.java
+	$(JAVAC_CMD) $(LOCAL_JAVAC_FLAGS) $(DOCLET_JAVAC_FLAGS) -classpath "$(CLASSBINDIR)$(CLASSPATH_SEPARATOR)$(DOCLETSRC)" -d $(DOCLETDST) $?
+	@$(java-vm-cleanup)
+
+# To run, the doclet needs SwingBeanInfoBase class.  Also Notice the lie
+# here, SwingBeanInfoBase.class goes elswhere.
+
+.SwingBeanInfo: $(OBJDIR) $(BEANCLASSDIR) $(BEANSRCDIR) $(SWINGPKG)/BeanInfoUtils.class $(SWINGPKG)/SwingBeanInfoBase.class 
+
+$(SWINGPKG)/BeanInfoUtils.class: $(BEANSRCDIR)/BeanInfoUtils.java
+	$(JAVAC_CMD) $(LOCAL_JAVAC_FLAGS) $(DOCLET_JAVAC_FLAGS) -d $(BEANCLASSDIR) $<
+	@$(java-vm-cleanup)
+
+$(SWINGPKG)/SwingBeanInfoBase.class: $(BEANSRCDIR)/SwingBeanInfoBase.java $(BEANSRCDIR)/BeanInfoUtils.java
+	$(JAVAC_CMD) $(LOCAL_JAVAC_FLAGS) $(DOCLET_JAVAC_FLAGS) -classpath $(BEANCLASSDIR) -d $(BEANCLASSDIR) $<
+	@$(java-vm-cleanup)
+
+#
+# Stage 1: Generate *BeanInfo.java files.
+#
+mkbeaninfo: $(BEANSRCDIR) .delete.beanlist $(FILES_beans) .javadoc.beanlist
+
+.delete.beanlist: 
+	@$(RM) $(TEMPDIR)/.beans.list
+
+.javadoc.beanlist:
+	if [ -s $(TEMPDIR)/.beans.list ]; \
+	then $(JAVADOC_CMD) $(DOCLETFLAGS) -x $(DEBUG_FLAG) -d $(BEANSRCDIR) -t $(DOCLETSRC)/SwingBeanInfo.template -docletpath $(DOCLETDST) \
+	    $(shell if [ -s $(TEMPDIR)/.beans.list ]; then $(CAT) $(TEMPDIR)/.beans.list; fi); \
+	fi
+	@$(java-vm-cleanup)
+
+$(BEANSRCDIR)/text/%BeanInfo.java: $(FAKESRC)/$(SWINGPKG)/text/%.java
+	@$(ECHO) $< >> $(TEMPDIR)/.beans.list
+
+$(BEANSRCDIR)/%BeanInfo.java: $(FAKESRC)/$(SWINGPKG)/%.java
+	@$(ECHO) $< >> $(TEMPDIR)/.beans.list
+
+$(BEANSRCDIR)/SwingBeanInfoBase.java: $(DOCLETSRC)/beaninfo/SwingBeanInfoBase.java
+	$(CP) $< $@
+
+$(BEANSRCDIR)/BeanInfoUtils.java: $(DOCLETSRC)/beaninfo/BeanInfoUtils.java
+	$(CP) $< $@
+
+#
+# Compile the generated *BeanInfo.java files.
+#
+mkclasses: .delete.classlist $(BEANCLASSDIR)/$(SWINGPKG)/SwingBeanInfoBase.class \
+	$(BEANCLASSDIR)/$(SWINGPKG)/text/JTextComponentBeanInfo.class \
+	.create.classlist $(FILES_bclass) .compile.classlist
+
+$(BEANCLASSDIR)/$(SWINGPKG)/SwingBeanInfoBase.class:: \
+	$(BEANSRCDIR)/SwingBeanInfoBase.java
+
+$(BEANCLASSDIR)/$(SWINGPKG)/text/JTextComponentBeanInfo.class:: \
+	$(BEANSRCDIR)/JTextComponentBeanInfo.java
+
+$(FILES_bclass):: $(FILES_beans)
+
+# all the sources are in one directory, so make sure that the list does
+# not have the /text direcotry in it. Kludgy, this is...
+.create.classlist:
+	@$(ECHO) $(subst /text/,/,$(FILES_beans)) >> $(TEMPDIR)/.classes.list
+
+.delete.classlist:
+	@$(ECHO) "Deleting classes.list..."
+	@$(RM) $(TEMPDIR)/.classes.list
+
+.compile.classlist:
+	if [ -s $(TEMPDIR)/.classes.list ] ; then \
+	    $(JAVAC_CMD) $(LOCAL_JAVAC_FLAGS) -classpath $(LOCAL_CLASSPATH) -d $(BEANCLASSDIR) \
+	    $(shell if [ -s $(TEMPDIR)/.classes.list ] ; then $(CAT) $(TEMPDIR)/.classes.list; fi ) ; \
+	fi
+	@$(java-vm-cleanup)
+
+#
+# Packaging
+#
+mkpackaging: 
+	$(RM) -r $(BEANCLASSDIR)/$(SWINGPKG)/beaninfo/images
+	$(MKDIR) -p $(BEANCLASSDIR)/$(SWINGPKG)/beaninfo/images
+	$(CP) $(DOCLETSRC)/beaninfo/images/*.gif $(BEANCLASSDIR)/$(SWINGPKG)/beaninfo/images
+	$(BOOT_JAR_CMD) cf $(TEMPDIR)/tmp.jar \
+	     -C $(BEANCLASSDIR) javax \
+	     -C $(BEANCLASSDIR) sun \
+	     $(BOOT_JAR_JFLAGS)
+	$(MV) $(TEMPDIR)/tmp.jar $(JDK_IMAGE_DIR)/lib/dt.jar
+	@$(java-vm-cleanup)
+
+#
+# Cleanliness.
+#
+swingbeans.clean swingbeans.clobber::
+	$(RM) -r 1.2src 1.2classes
+	$(RM) -r java javax
+	$(RM) *.class
+	$(RM) $(TEMPDIR)/.beans.list $(TEMPDIR)/.classes.list beaninfo.jar
+
+#
+# Utility.
+#
+
+
+#
+# Debugging targets for looking at variables.
+#
+show-vars:
+	@$(ECHO) FILES_beans = $(FILES_beans)
+	@$(ECHO) FILES_bclass = $(FILES_bclass)
+
+.PRECIOUS: $(FILES_beans) 
+
+.PHONY: swing-1.2-beans swing-1.2-beans-debug \
+	make-swing-beans mkdoclet .SwingBeanInfo mkbeaninfo .delete.beanlist \
+	.javadoc.beanlist mkclasses .create.classlist .delete.classlist \
+	.compile.classlist mkpackaging mkpackaging swingbeans.clean \
+	swingbeans.clobber show-vars  
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/beaninfo/manifest	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,111 @@
+Name: javax/swing/JApplet.class
+Java-Bean: True
+
+Name: javax/swing/JButton.class
+Java-Bean: True
+
+Name: javax/swing/JCheckBox.class
+Java-Bean: True
+
+Name: javax/swing/JCheckBoxMenuItem.class
+Java-Bean: True
+
+Name: javax/swing/JComboBox.class
+Java-Bean: True
+
+Name: javax/swing/JDialog.class
+Java-Bean: True
+
+Name: javax/swing/JEditorPane.class
+Java-Bean: True
+
+Name: javax/swing/JFormattedTextField.class
+Java-Bean: True
+
+Name: javax/swing/JInternalFrame.class
+Java-Bean: True
+
+Name: javax/swing/JFrame.class
+Java-Bean: True
+
+Name: javax/swing/JLabel.class
+Java-Bean: True
+
+Name: javax/swing/JList.class
+Java-Bean: True
+
+Name: javax/swing/JMenu.class
+Java-Bean: True
+
+Name: javax/swing/JMenuBar.class
+Java-Bean: True
+
+Name: javax/swing/JMenuItem.class
+Java-Bean: True
+
+Name: javax/swing/JOptionPane.class
+Java-Bean: True
+
+Name: javax/swing/JPanel.class
+Java-Bean: True
+
+Name: javax/swing/JPasswordField.class
+Java-Bean: True
+
+Name: javax/swing/JPopupMenu.class
+Java-Bean: True
+
+Name: javax/swing/JProgressBar.class
+Java-Bean: True
+
+Name: javax/swing/JRadioButton.class
+Java-Bean: True
+
+Name: javax/swing/JRadioButtonMenuItem.class
+Java-Bean: True
+
+Name: javax/swing/JScrollBar.class
+Java-Bean: True
+
+Name: javax/swing/JScrollPane.class
+Java-Bean: True
+
+Name: javax/swing/JSeparator.class
+Java-Bean: True
+
+Name: javax/swing/JSlider.class
+Java-Bean: True
+
+Name: javax/swing/JSpinner.class
+Java-Bean: True
+
+Name: javax/swing/JSplitPane.class
+Java-Bean: True
+
+Name: javax/swing/JTabbedPane.class
+Java-Bean: True
+
+Name: javax/swing/JTextArea.class
+Java-Bean: True
+
+Name: javax/swing/JTextField.class
+Java-Bean: True
+
+Name: javax/swing/JTextPane.class
+Java-Bean: True
+
+Name: javax/swing/JToolBar.class
+Java-Bean: True
+
+Name: javax/swing/JTree.class
+Java-Bean: True
+
+Name: javax/swing/JTable.class
+Java-Bean: True
+
+Name: javax/swing/JToggleButton.class
+Java-Bean: True
+
+Name: javax/swing/JWindow.class
+Java-Bean: True
+ 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/html32dtd/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright (c) 1998, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR     = ../../..
+PACKAGE      = javax/swing/html/parser
+PRODUCT      = swing
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Shared defintions.
+#
+HTML32DTD          = $(CLASSBINDIR)/javax/swing/text/html/parser/html32.bdtd
+
+$(HTML32DTD): $(BUILD_TOOLS)
+	@$(prep-target)
+	($(TOOL_DTDBUILDER) html32 > $@) || exit 1
+	@$(java-vm-cleanup)
+
+all build: $(HTML32DTD)
+
+include $(BUILDDIR)/common/Rules.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/plaf/FILES.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,117 @@
+#
+# Copyright (c) 1998, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+MISC_SWING_FILES = \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Computer.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/DetailsView.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Directory.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Error.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/File.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/FloppyDrive.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/HardDrive.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/HomeFolder.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Inform.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/ListView.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/NewFolder.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Question.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/TreeClosed.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/TreeLeaf.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/TreeOpen.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/UpFolder.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/Warn.gif \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/image-delayed.png \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/image-failed.png \
+\
+        $(CLASSBINDIR)/javax/swing/plaf/basic/icons/image-delayed.png \
+        $(CLASSBINDIR)/javax/swing/plaf/basic/icons/image-failed.png \
+\
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/Error.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/Inform.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/Question.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/sortDown.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/sortUp.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/Warn.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/close.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/close-pressed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/collapsed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/collapsed-rtl.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/computer.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/directory.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/error.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/expanded.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/file.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/floppy.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/hardDrive.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/homeFolder.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/iconify.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/iconify-pressed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/info.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/maximize.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/maximize-pressed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/menu.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/minimize.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/minimize-pressed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/newFolder.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/paletteClose.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/paletteClose-pressed.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/question.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/upFolder.gif \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/icons/ocean/warning.png \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/FrameClose.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/FrameMaximize.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/FrameMinimize.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/FrameRestoreDown.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/FrameRestoreUp.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/MenuItemCommand.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/OptionPaneInformation.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/OptionPaneWarning.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/OptionPaneError.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/OptionPaneQuestion.wav \
+	$(CLASSBINDIR)/javax/swing/plaf/metal/sounds/PopupMenuPopup.wav
+
+MISC_SWING_FILES_MOTIF_GIF = \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/DesktopIcon.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/TreeClosed.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/TreeOpen.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/Inform.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/Question.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/Warn.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/Error.gif
+
+MISC_SWING_FILES_MOTIF_PNG = \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/image-delayed.png \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/motif/icons/image-failed.png
+
+MISC_SWING_FILES_UNIX = \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/gtk/icons/Directory.gif \
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/gtk/icons/File.gif \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/gtk/icons/image-delayed.png \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/gtk/icons/image-failed.png \
+        $(CLASSBINDIR)/com/sun/java/swing/plaf/gtk/resources/metacity/SwingFallbackTheme/metacity-1/metacity-theme-1.xml
+
+LOGO_ICONS=\
+	$(CLASSBINDIR)/com/sun/java/swing/plaf/windows/icons/JavaCup32.png \
+	$(CLASSBINDIR)/javax/swing/plaf/basic/icons/JavaCup16.png
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/javax/swing/plaf/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,133 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR  = ../../..
+PACKAGE   = javax.swing.plaf
+PRODUCT   = com
+SWING_SRC = $(SHARE_SRC)/classes/javax/swing
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES.gmk
+AUTO_FILES_JAVA_DIRS = javax/swing/plaf sun/swing com/sun/java/swing/plaf
+
+ifeq ($(PLATFORM), windows)
+    # Don't build GTK L&F on Windows
+    AUTO_JAVA_PRUNE = gtk
+endif
+
+ifdef DISABLE_NIMBUS
+    AUTO_JAVA_PRUNE += nimbus
+endif
+
+MISC_FILES = $(MISC_SWING_FILES)
+ifneq ($(PLATFORM), windows)
+    # Only include GTK icons on Solaris/Linux
+    MISC_FILES += $(MISC_SWING_FILES_UNIX)
+endif
+
+NIMBUS_GENSRC_DIR = $(GENSRCDIR)/javax/swing/plaf/nimbus
+NIMBUS_SKIN_FILE = $(SWING_SRC)/plaf/nimbus/skin.laf
+
+FILES_java = $(FILES_SWING_java)
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+RESOURCE_BUNDLES_COMPILED_PROPERTIES = \
+	com/sun/swing/internal/plaf/basic/resources/basic.properties \
+	com/sun/swing/internal/plaf/metal/resources/metal.properties \
+	com/sun/swing/internal/plaf/synth/resources/synth.properties \
+	com/sun/java/swing/plaf/motif/resources/motif.properties \
+        com/sun/java/swing/plaf/windows/resources/windows.properties
+ifneq ($(PLATFORM), windows)
+    # Only compile GTK resource bundles on Solaris/Linux
+    RESOURCE_BUNDLES_COMPILED_PROPERTIES += \
+        com/sun/java/swing/plaf/gtk/resources/gtk.properties
+endif
+
+#
+# Rules.
+# Process LOGO_ICONS and Motif Icons first.
+#
+build: $(LOGO_ICONS) $(MISC_SWING_FILES_MOTIF_GIF) $(MISC_SWING_FILES_MOTIF_PNG) other_files
+
+$(NIMBUS_GENSRC_DIR): $(NIMBUS_SKIN_FILE) $(BUILD_TOOLS)
+	@$(ECHO) "Generating Nimbus source files:"
+	$(RM) -r $(NIMBUS_GENSRC_DIR)
+	$(TOOL_GENERATENIMBUS) \
+	    -skinFile $(NIMBUS_SKIN_FILE) -buildDir $(GENSRCDIR) \
+	    -packagePrefix $(PACKAGE).nimbus -lafName Nimbus
+	@$(ECHO) "Finished generating Nimbus source files"
+
+clean:: classes.clean
+	$(RM) -r $(NIMBUS_GENSRC_DIR)
+
+#
+# Include
+#
+ifndef DISABLE_NIMBUS
+    CLASSES_INIT = $(NIMBUS_GENSRC_DIR)
+endif
+
+include $(BUILDDIR)/common/Classes.gmk
+
+ifndef OPENJDK
+$(LOGO_ICONS): $(CLASSBINDIR)/%.png: $(CLOSED_SRC)/share/classes/%.png
+	$(install-file)
+
+$(MISC_SWING_FILES_MOTIF_GIF): $(CLASSBINDIR)/%.gif: $(CLOSED_SRC)/share/classes/%.gif
+	$(install-file)
+
+$(MISC_SWING_FILES_MOTIF_PNG): $(CLASSBINDIR)/%.png: $(CLOSED_SRC)/share/classes/%.png
+	$(install-file)
+endif	
+
+other_files: $(MISC_FILES)
+
+$(CLASSBINDIR)/%.wav: $(SHARE_SRC)/classes/%.wav
+	$(install-file)
+
+$(CLASSBINDIR)/%.gif: $(SHARE_SRC)/classes/%.gif
+	$(install-file)
+
+$(CLASSBINDIR)/%.png: $(SHARE_SRC)/classes/%.png
+	$(install-file)
+
+$(CLASSBINDIR)/%.xml: $(SHARE_SRC)/classes/%.xml
+	$(install-file)
+
+$(CLASSBINDIR)/%.css: $(SHARE_SRC)/classes/%.css
+	$(install-file)
+
+$(CLASSBINDIR)/%.bdtd: $(SHARE_SRC)/classes/%.bdtd
+	$(install-file)
+
+$(CLASSBINDIR)/%.txt: $(SHARE_SRC)/classes/%.txt
+	$(install-file)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/jpda/jdwp/jdwp.spec	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,3148 @@
+/*
+ * Copyright (c) 1998, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+JDWP "Java(tm) Debug Wire Protocol"
+(CommandSet VirtualMachine=1
+    (Command Version=1 
+        "Returns the JDWP version implemented by the target VM. "
+	"The version string format is implementation dependent. "
+	(Out 
+        )
+        (Reply 
+	    (string description "Text information on the VM version")
+	    (int    jdwpMajor   "Major JDWP Version number")
+	    (int    jdwpMinor   "Minor JDWP Version number")
+	    (string vmVersion   "Target VM JRE version, as in the java.version property")
+	    (string vmName      "Target VM name, as in the java.vm.name property")
+        )
+        (ErrorSet
+            (Error VM_DEAD)   
+        )
+    )
+    (Command ClassesBySignature=2
+        "Returns reference types for all the classes loaded by the target VM "
+	"which match the given signature. "
+	"Multple reference types will be returned if two or more class "
+	"loaders have loaded a class of the same name. "
+	"The search is confined to loaded classes only; no attempt is made "
+	"to load a class of the given signature. "
+	(Out
+	    (string signature "JNI signature of the class to find "
+	                      "(for example, \"Ljava/lang/String;\"). "
+            )
+        )
+        (Reply 
+            (Repeat classes "Number of reference types that follow." 
+                (Group ClassInfo
+                    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+		                      "of following reference type. ")
+                    (referenceTypeID typeID "Matching loaded reference type")
+                    (int status "The current class "
+		                "<a href=\"#JDWP_ClassStatus\">status.</a> ")
+                )
+            )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command AllClasses=3
+        "Returns reference types for all classes currently loaded by the "
+	"target VM."
+	(Out 
+        )
+        (Reply 
+            (Repeat classes "Number of reference types that follow." 
+                (Group ClassInfo
+                    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+		                      "of following reference type. ")
+                    (referenceTypeID typeID "Loaded reference type")
+                    (string signature 
+                                "The JNI signature of the loaded reference type")
+                    (int status "The current class "
+		                "<a href=\"#JDWP_ClassStatus\">status.</a> ")
+                )
+            )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command AllThreads=4
+        "Returns all threads currently running in the target VM . "
+	"The returned list contains threads created through "
+	"java.lang.Thread, all native threads attached to "
+	"the target VM through JNI, and system threads created "
+	"by the target VM. Threads that have not yet been started "
+	"and threads that have completed their execution are not "
+	"included in the returned list. "
+        (Out
+        )
+        (Reply
+            (Repeat threads "Number of threads that follow." 
+                (threadObject thread "A running thread")
+            )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command TopLevelThreadGroups=5
+        "Returns all thread groups that do not have a parent. This command "
+	"may be used as the first step in building a tree (or trees) of the "
+	"existing thread groups."
+        (Out
+        )
+        (Reply
+            (Repeat groups "Number of thread groups that follow." 
+                (threadGroupObject group "A top level thread group")
+            )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command Dispose=6
+	"Invalidates this virtual machine mirror. "
+	"The communication channel to the target VM is closed, and "
+	"the target VM prepares to accept another subsequent connection "
+	"from this debugger or another debugger, including the "
+	"following tasks: "
+	"<ul>"
+	"<li>All event requests are cancelled. "
+	"<li>All threads suspended by the thread-level "
+	"<a href=\"#JDWP_ThreadReference_Resume\">resume</a> command "
+	"or the VM-level "
+	"<a href=\"#JDWP_VirtualMachine_Resume\">resume</a> command "
+	"are resumed as many times as necessary for them to run. "
+	"<li>Garbage collection is re-enabled in all cases where it was "
+	"<a href=\"#JDWP_ObjectReference_DisableCollection\">disabled</a> "
+	"</ul>"
+	"Any current method invocations executing in the target VM "
+	"are continued after the disconnection. Upon completion of any such "
+	"method invocation, the invoking thread continues from the "
+	"location where it was originally stopped. "
+	"<p>"
+	"Resources originating in  "
+	"this VirtualMachine (ObjectReferences, ReferenceTypes, etc.) "
+	"will become invalid. "
+        (Out
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command IDSizes=7
+        "Returns the sizes of variably-sized data types in the target VM."
+	"The returned values indicate the number of bytes used by the "
+	"identifiers in command and reply packets."
+        (Out
+        )
+        (Reply
+            (int fieldIDSize "fieldID size in bytes ")
+            (int methodIDSize "methodID size in bytes ")
+            (int objectIDSize "objectID size in bytes ")
+            (int referenceTypeIDSize "referenceTypeID size in bytes ")
+            (int frameIDSize "frameID size in bytes ")
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command Suspend=8
+	"Suspends the execution of the application running in the target "
+	"VM. All Java threads currently running will be suspended. "
+	"<p>"
+	"Unlike java.lang.Thread.suspend, "
+	"suspends of both the virtual machine and individual threads are "
+	"counted. Before a thread will run again, it must be resumed through "
+	"the <a href=\"#JDWP_VirtualMachine_Resume\">VM-level resume</a> command "
+	"or the <a href=\"#JDWP_ThreadReference_Resume\">thread-level resume</a> command "
+	"the same number of times it has been suspended. "
+        (Out
+        )
+        (Reply
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command Resume=9
+        "Resumes execution of the application after the suspend "
+        "command or an event has stopped it. "
+	"Suspensions of the Virtual Machine and individual threads are "
+	"counted. If a particular thread is suspended n times, it must "
+	"resumed n times before it will continue. "
+        (Out
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command Exit=10
+        "Terminates the target VM with the given exit code. "
+        "On some platforms, the exit code might be truncated, for "
+        "example, to the low order 8 bits. "
+	"All ids previously returned from the target VM become invalid. "
+	"Threads running in the VM are abruptly terminated. "
+	"A thread death exception is not thrown and "
+	"finally blocks are not run."
+        (Out
+            (int exitCode "the exit code")
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command CreateString=11
+        "Creates a new string object in the target VM and returns "
+	"its id. " 
+        (Out
+	    (string utf "UTF-8 characters to use in the created string. ")
+        )
+        (Reply
+            (stringObject stringObject 
+                "Created string (instance of java.lang.String) ")
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command Capabilities=12
+        "Retrieve this VM's capabilities. The capabilities are returned "
+	"as booleans, each indicating the presence or absence of a "
+	"capability. The commands associated with each capability will "
+	"return the NOT_IMPLEMENTED error if the cabability is not "
+	"available."
+        (Out
+        )
+        (Reply
+            (boolean canWatchFieldModification 
+	             "Can the VM watch field modification, and therefore "
+		     "can it send the Modification Watchpoint Event?")
+            (boolean canWatchFieldAccess 
+	             "Can the VM watch field access, and therefore "
+		     "can it send the Access Watchpoint Event?")
+            (boolean canGetBytecodes 
+	             "Can the VM get the bytecodes of a given method? ")
+            (boolean canGetSyntheticAttribute 
+	             "Can the VM determine whether a field or method is "
+		     "synthetic? (that is, can the VM determine if the "
+		     "method or the field was invented by the compiler?) ")
+            (boolean canGetOwnedMonitorInfo 
+	             "Can the VM get the owned monitors infornation for "
+		     "a thread?")
+            (boolean canGetCurrentContendedMonitor 
+	             "Can the VM get the current contended monitor of a thread?")
+            (boolean canGetMonitorInfo 
+	             "Can the VM get the monitor information for a given object? ")
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command ClassPaths=13
+        "Retrieve the classpath and bootclasspath of the target VM. "
+	"If the classpath is not defined, returns an empty list. If the "
+        "bootclasspath is not defined returns an empty list."
+        (Out
+        )
+        (Reply
+	    (string baseDir "Base directory used to resolve relative "
+	                    "paths in either of the following lists.")
+            (Repeat classpaths "Number of paths in classpath."
+                (string path "One component of classpath") )
+            (Repeat bootclasspaths "Number of paths in bootclasspath."
+                (string path "One component of bootclasspath") )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command DisposeObjects=14
+        "Releases a list of object IDs. For each object in the list, the "
+        "following applies. "
+        "The count of references held by the back-end (the reference "
+        "count) will be decremented by refCnt. "
+        "If thereafter the reference count is less than "
+        "or equal to zero, the ID is freed. "
+        "Any back-end resources associated with the freed ID may "
+        "be freed, and if garbage collection was "
+        "disabled for the object, it will be re-enabled. "
+        "The sender of this command "
+        "promises that no further commands will be sent "
+        "referencing a freed ID.
+	"<p>"
+	"Use of this command is not required. If it is not sent, "
+	"resources associated with each ID will be freed by the back-end "
+	"at some time after the corresponding object is garbage collected. "
+	"It is most useful to use this command to reduce the load on the "
+	"back-end if a very large number of "
+	"objects has been retrieved from the back-end (a large array, "
+	"for example) but may not be garbage collected any time soon. "
+	"<p>"
+        "IDs may be re-used by the back-end after they "
+        "have been freed with this command."
+        "This description assumes reference counting, "
+        "a back-end may use any implementation which operates "
+        "equivalently. "
+	(Out
+	    (Repeat requests "Number of object dispose requests that follow"
+		(Group Request
+	 	    (object object "The object ID")
+		    (int refCnt "The number of times this object ID has been "
+				"part of a packet received from the back-end. "
+				"An accurate count prevents the object ID "
+				"from being freed on the back-end if "
+				"it is part of an incoming packet, not yet "
+				"handled by the front-end.")
+		)
+	    )
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command HoldEvents=15
+        "Tells the target VM to stop sending events. Events are not discarded; "
+	"they are held until a subsequent ReleaseEvents command is sent. "
+	"This command is useful to control the number of events sent "
+	"to the debugger VM in situations where very large numbers of events "
+	"are generated. "
+	"While events are held by the debugger back-end, application "
+	"execution may be frozen by the debugger back-end to prevent "
+	"buffer overflows on the back end. 
+	"Responses to commands are never held and are not affected by this 
+	"command. If events are already being held, this command is "
+	"ignored."
+        (Out
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command ReleaseEvents=16
+        "Tells the target VM to continue sending events. This command is "
+	"used to restore normal activity after a HoldEvents command. If "
+	"there is no current HoldEvents command in effect, this command is "
+	"ignored."
+        (Out
+        )
+        (Reply
+        )
+        (ErrorSet
+        )
+    )
+    (Command CapabilitiesNew=17
+        "Retrieve all of this VM's capabilities. The capabilities are returned "
+	"as booleans, each indicating the presence or absence of a "
+	"capability. The commands associated with each capability will "
+	"return the NOT_IMPLEMENTED error if the cabability is not "
+	"available."
+        "Since JDWP version 1.4."
+        (Out
+        )
+        (Reply
+            (boolean canWatchFieldModification 
+	             "Can the VM watch field modification, and therefore "
+		     "can it send the Modification Watchpoint Event?")
+            (boolean canWatchFieldAccess 
+	             "Can the VM watch field access, and therefore "
+		     "can it send the Access Watchpoint Event?")
+            (boolean canGetBytecodes 
+	             "Can the VM get the bytecodes of a given method? ")
+            (boolean canGetSyntheticAttribute 
+	             "Can the VM determine whether a field or method is "
+		     "synthetic? (that is, can the VM determine if the "
+		     "method or the field was invented by the compiler?) ")
+            (boolean canGetOwnedMonitorInfo 
+	             "Can the VM get the owned monitors infornation for "
+		     "a thread?")
+            (boolean canGetCurrentContendedMonitor 
+	             "Can the VM get the current contended monitor of a thread?")
+            (boolean canGetMonitorInfo 
+	             "Can the VM get the monitor information for a given object? ")
+            (boolean canRedefineClasses 
+	             "Can the VM redefine classes?")
+            (boolean canAddMethod 
+	             "Can the VM add methods when redefining "
+                     "classes?")
+            (boolean canUnrestrictedlyRedefineClasses 
+	             "Can the VM redefine classes"
+                     "in arbitrary ways?")
+            (boolean canPopFrames
+	             "Can the VM pop stack frames?")
+            (boolean canUseInstanceFilters
+	             "Can the VM filter events by specific object?")
+            (boolean canGetSourceDebugExtension
+	             "Can the VM get the source debug extension?")
+            (boolean canRequestVMDeathEvent
+	             "Can the VM request VM death events?")
+            (boolean canSetDefaultStratum
+	             "Can the VM set a default stratum?")
+            (boolean canGetInstanceInfo
+	             "Can the VM return instances, counts of instances of classes "
+                     "and referring objects?")
+            (boolean canRequestMonitorEvents
+	             "Can the VM request monitor events?")
+            (boolean canGetMonitorFrameInfo
+	             "Can the VM get monitors with frame depth info?")
+            (boolean canUseSourceNameFilters
+	             "Can the VM filter class prepare events by source name?")
+            (boolean canGetConstantPool
+	             "Can the VM return the constant pool information?")
+            (boolean canForceEarlyReturn
+	             "Can the VM force early return from a method?")
+            (boolean reserved22
+	             "Reserved for future capability")
+            (boolean reserved23
+	             "Reserved for future capability")
+            (boolean reserved24
+	             "Reserved for future capability")
+            (boolean reserved25
+	             "Reserved for future capability")
+            (boolean reserved26
+	             "Reserved for future capability")
+            (boolean reserved27
+	             "Reserved for future capability")
+            (boolean reserved28
+	             "Reserved for future capability")
+            (boolean reserved29
+	             "Reserved for future capability")
+            (boolean reserved30
+	             "Reserved for future capability")
+            (boolean reserved31
+	             "Reserved for future capability")
+            (boolean reserved32
+	             "Reserved for future capability")
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command RedefineClasses=18
+        "Installs new class definitions. "	
+	"If there are active stack frames in methods of the redefined classes in the "
+	"target VM then those active frames continue to run the bytecodes of the "
+	"original method. These methods are considered obsolete - see "
+	"<a href=\"#JDWP_Method_IsObsolete\">IsObsolete</a>. The methods in the "
+	"redefined classes will be used for new invokes in the target VM. "
+	"The original method ID refers to the redefined method. "
+	"All breakpoints in the redefined classes are cleared."
+	"If resetting of stack frames is desired, the "
+	"<a href=\"#JDWP_StackFrame_PopFrames\">PopFrames</a> command can be used "
+	"to pop frames with obsolete methods."
+	"<p>"
+	"Requires canRedefineClasses capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+	"In addition to the canRedefineClasses capability, the target VM must "
+	"have the canAddMethod capability to add methods when redefining classes, "
+	"or the canUnrestrictedlyRedefineClasses to redefine classes in arbitrary "
+	"ways."
+	(Out 
+            (Repeat classes "Number of reference types that follow." 
+                (Group ClassDef
+                    (referenceType refType "The reference type.")
+                    (Repeat classfile "Number of bytes defining class (below)"
+                         (byte classbyte "byte in JVM class file "
+                                         "format.")
+                    )
+                )
+            )
+        )
+        (Reply 
+        )
+        (ErrorSet
+            (Error INVALID_CLASS    "One of the refTypes is not the ID of a reference "
+                                    "type.")
+            (Error INVALID_OBJECT   "One of the refTypes is not a known ID.")
+            (Error UNSUPPORTED_VERSION)
+            (Error INVALID_CLASS_FORMAT)
+            (Error CIRCULAR_CLASS_DEFINITION)
+            (Error FAILS_VERIFICATION)
+            (Error NAMES_DONT_MATCH)
+            (Error NOT_IMPLEMENTED  "No aspect of this functionality is implemented "
+                                    "(CapabilitiesNew.canRedefineClasses is false)")
+            (Error ADD_METHOD_NOT_IMPLEMENTED)
+            (Error SCHEMA_CHANGE_NOT_IMPLEMENTED)
+            (Error HIERARCHY_CHANGE_NOT_IMPLEMENTED)
+            (Error DELETE_METHOD_NOT_IMPLEMENTED)
+            (Error CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED)
+            (Error METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SetDefaultStratum=19
+        "Set the default stratum. Requires canSetDefaultStratum capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+	(Out
+	    (string stratumID "default stratum, or empty string to use "
+                              "reference type default.")
+        )
+        (Reply
+        )
+        (ErrorSet
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command AllClassesWithGeneric=20
+        "Returns reference types for all classes currently loaded by the "
+	"target VM.  "
+        "Both the JNI signature and the generic signature are "
+        "returned for each class.  "
+	"Generic signatures are described in the signature attribute "
+        "section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "Since JDWP version 1.5."
+	(Out 
+        )
+        (Reply 
+            (Repeat classes "Number of reference types that follow." 
+                (Group ClassInfo
+                    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+		                      "of following reference type. ")
+                    (referenceTypeID typeID "Loaded reference type")
+                    (string signature 
+                                "The JNI signature of the loaded reference type.")
+                    (string genericSignature 
+                                "The generic signature of the loaded reference type "
+                                "or an empty string if there is none.")
+                    (int status "The current class "
+		                "<a href=\"#JDWP_ClassStatus\">status.</a> ")
+                )
+            )
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    
+    (Command InstanceCounts=21
+        "Returns the number of instances of each reference type in the input list. "
+        "Only instances that are reachable for the purposes of "
+        "garbage collection are counted.  If a reference type is invalid, "
+        "eg. it has been unloaded, zero is returned for its instance count."
+        "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see "
+        "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (Repeat refTypesCount "Number of reference types that follow.    Must be non-negative."
+                (referenceType refType "A reference type ID.")
+            )
+          )
+        (Reply
+            (Repeat counts "The number of counts that follow."
+              (long instanceCount "The number of instances for the corresponding reference type "
+                                  "in 'Out Data'.")
+            )
+        )
+        (ErrorSet
+            (Error ILLEGAL_ARGUMENT   "refTypesCount is less than zero.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+)
+
+(CommandSet ReferenceType=2
+    (Command Signature=1
+        "Returns the JNI signature of a reference type. "
+	"JNI signature formats are described in the "
+	"<a href=\"http://java.sun.com/products/jdk/1.2/docs/guide/jni/index.html\">Java Native Inteface Specification</a>"
+	"<p>
+	"For primitive classes "
+	"the returned signature is the signature of the corresponding primitive "
+	"type; for example, \"I\" is returned as the signature of the class "
+	"represented by java.lang.Integer.TYPE."
+	(Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (string signature 
+                "The JNI signature for the reference type.")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command ClassLoader=2
+        "Returns the instance of java.lang.ClassLoader which loaded "
+        "a given reference type. If the reference type was loaded by the "
+	"system class loader, the returned object ID is null."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (classLoaderObject classLoader "The class loader for the reference type. ")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Modifiers=3
+        "Returns the modifiers (also known as access flags) for a reference type. "
+	"The returned bit mask contains information on the declaration "
+	"of the reference type. If the reference type is an array or " 
+	"a primitive class (for example, java.lang.Integer.TYPE), the "
+	"value of the returned bit mask is undefined."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (int modBits "Modifier bits as defined in Chapter 4 of "
+	                 "<cite>The Java&trade; Virtual Machine Specification</cite>")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Fields=4
+        "Returns information for each field in a reference type. "
+        "Inherited fields are not included. "
+	"The field list will include any synthetic fields created "
+	"by the compiler. "
+        "Fields are returned in the order they occur in the class file."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat declared "Number of declared fields."
+                (Group FieldInfo
+                    (field fieldID "Field ID.")
+                    (string name "Name of field.")
+                    (string signature "JNI Signature of field.")
+                    (int modBits "The modifier bit flags (also known as access flags) "
+		                 "which provide additional information on the  "
+                                 "field declaration. Individual flag values are "
+				 "defined in Chapter 4 of "
+ 	                         "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+				 "In addition, The <code>0xf0000000</code> bit identifies "
+				 "the field as synthetic, if the synthetic attribute "
+				 "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error CLASS_NOT_PREPARED)
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Methods=5
+        "Returns information for each method in a reference type. "
+        "Inherited methods are not included. The list of methods will "
+	"include constructors (identified with the name \"&lt;init&gt;\"), "
+	"the initialization method (identified with the name \"&lt;clinit&gt;\") "
+	"if present, and any synthetic methods created by the compiler. "
+        "Methods are returned in the order they occur in the class file."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat declared "Number of declared methods."
+                (Group MethodInfo
+                    (method methodID "Method ID.")
+                    (string name "Name of method.")
+                    (string signature "JNI signature of method.")
+                    (int modBits "The modifier bit flags (also known as access flags) "
+		                 "which provide additional information on the  "
+                                 "method declaration. Individual flag values are "
+				 "defined in Chapter 4 of "
+ 	                         "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+				 "In addition, The <code>0xf0000000</code> bit identifies "
+				 "the method as synthetic, if the synthetic attribute "
+				 "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error CLASS_NOT_PREPARED)
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command GetValues=6
+        "Returns the value of one or more static fields of the "
+	"reference type. Each field must be member of the reference type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, the values of private "
+	"fields can be obtained."
+        (Out
+            (referenceType refType "The reference type ID.")
+            (Repeat fields "The number of values to get"	    	    
+                (Group Field
+                    (field fieldID "A field to get")
+                )
+            )
+        )
+        (Reply
+            (Repeat values "The number of values returned, always equal to fields, "
+	    		   "the number of values to get."	    
+                (value value "The field value")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_FIELDID)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SourceFile=7
+        "Returns the name of source file in which a reference type was "
+	"declared. "
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (string sourceFile "The source file name. No path information "
+	                       "for the file is included")
+        )
+        (ErrorSet	    
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+	    (Error ABSENT_INFORMATION	"The source file attribute is absent.")	    
+            (Error VM_DEAD)
+        )
+    )
+    (Command NestedTypes=8
+        "Returns the classes and interfaces directly nested within this type."
+        "Types further nested within those types are not included. "
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat classes "The number of nested classes and interfaces"
+                (Group TypeInfo
+                    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+		                      "of following reference type. ")
+                    (referenceTypeID typeID "The nested class or interface ID.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Status=9
+        "Returns the current status of the reference type. The status "
+	"indicates the extent to which the reference type has been "
+	"initialized, as described in section 2.1.6 of "
+	"<cite>The Java&trade; Virtual Machine Specification</cite>. "
+	"If the class is linked the PREPARED and VERIFIED bits in the returned status bits "
+	"will be set. If the class is initialized the INITIALIZED bit in the returned "
+	"status bits will be set. If an error occured during initialization then the "
+	"ERROR bit in the returned status bits will be set. "	
+	"The returned status bits are undefined for array types and for "
+	"primitive classes (such as java.lang.Integer.TYPE). "		
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (int status "<a href=\"#JDWP_ClassStatus\">Status</a> bits:"
+                        "See <a href=\"#JDWP_ClassStatus\">JDWP.ClassStatus</a>")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Interfaces=10
+        "Returns the interfaces declared as implemented by this class. "
+        "Interfaces indirectly implemented (extended by the implemented "
+        "interface or implemented by a superclass) are not included."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat interfaces "The number of implemented interfaces"
+                (interfaceType interfaceType "implemented interface.")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command ClassObject=11
+        "Returns the class object corresponding to this type. "
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (classObject classObject "class object.")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command SourceDebugExtension=12
+        "Returns the value of the SourceDebugExtension attribute. "
+        "Since JDWP version 1.4. Requires canGetSourceDebugExtension capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (string extension "extension attribute")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS      "refType is not the ID of a reference "
+                                      "type.")
+            (Error INVALID_OBJECT     "refType is not a known ID.")
+            (Error ABSENT_INFORMATION "If the extension is not specified.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SignatureWithGeneric=13
+        "Returns the JNI signature of a reference type along with the "
+        "generic signature if there is one.  "
+	"Generic signatures are described in the signature attribute "
+        "section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "Since JDWP version 1.5."
+	"<p>
+	(Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (string signature 
+                "The JNI signature for the reference type.")
+            (string genericSignature 
+                "The generic signature for the reference type or an empty "
+                "string if there is none.")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command FieldsWithGeneric=14
+        "Returns information, including the generic signature if any, "
+        "for each field in a reference type. "
+        "Inherited fields are not included. "
+	"The field list will include any synthetic fields created "
+	"by the compiler. "
+        "Fields are returned in the order they occur in the class file.  "
+	"Generic signatures are described in the signature attribute "
+        "section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "Since JDWP version 1.5."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat declared "Number of declared fields."
+                (Group FieldInfo
+                    (field fieldID "Field ID.")
+                    (string name "The name of the field.")
+                    (string signature "The JNI signature of the field.")
+                    (string genericSignature "The generic signature of the "
+                                             "field, or an empty string if there is none.")
+                    (int modBits "The modifier bit flags (also known as access flags) "
+		                 "which provide additional information on the  "
+                                 "field declaration. Individual flag values are "
+				 "defined in Chapter 4 of "
+ 	                         "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+				 "In addition, The <code>0xf0000000</code> bit identifies "
+				 "the field as synthetic, if the synthetic attribute "
+				 "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error CLASS_NOT_PREPARED)
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command MethodsWithGeneric=15
+        "Returns information, including the generic signature if any, "
+        "for each method in a reference type. "
+        "Inherited methodss are not included. The list of methods will "
+	"include constructors (identified with the name \"&lt;init&gt;\"), "
+	"the initialization method (identified with the name \"&lt;clinit&gt;\") "
+	"if present, and any synthetic methods created by the compiler. "
+        "Methods are returned in the order they occur in the class file.  "
+	"Generic signatures are described in the signature attribute "
+        "section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "Since JDWP version 1.5."
+        (Out
+            (referenceType refType "The reference type ID.")
+        )
+        (Reply
+            (Repeat declared "Number of declared methods."
+                (Group MethodInfo
+                    (method methodID "Method ID.")
+                    (string name "The name of the method.")
+                    (string signature "The JNI signature of the method.")
+                    (string genericSignature "The generic signature of the method, or "
+                                             "an empty string if there is none.")
+                    (int modBits "The modifier bit flags (also known as access flags) "
+		                 "which provide additional information on the  "
+                                 "method declaration. Individual flag values are "
+				 "defined in Chapter 4 of "
+ 	                         "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+				 "In addition, The <code>0xf0000000</code> bit identifies "
+				 "the method as synthetic, if the synthetic attribute "
+				 "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error CLASS_NOT_PREPARED)
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Instances=16
+        "Returns instances of this reference type. " 
+        "Only instances that are reachable for the purposes of "
+        "garbage collection are returned. "
+        "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (referenceType refType "The reference type ID.")
+            (int maxInstances "Maximum number of instances to return.  Must be non-negative. "
+                              "If zero, all instances are returned.")
+        )       
+        (Reply
+            (Repeat instances "The number of instances that follow."
+                 (tagged-object instance "An instance of this reference type.")
+             )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error ILLEGAL_ARGUMENT  "maxInstances is less than zero.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command ClassFileVersion=17
+	"Returns the class file major and minor version numbers, as defined in the class "
+        "file format of the Java Virtual Machine specification. "
+         "<p>Since JDWP version 1.6. "
+        (Out
+            (referenceType refType "The class.")
+        )
+        (Reply
+	    (int majorVersion "Major version number")
+	    (int minorVersion "Minor version number")		
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+	    (Error ABSENT_INFORMATION "The class file version information is "
+				      "absent for primitive and array types.")	    
+            (Error VM_DEAD)
+        )
+    )
+    (Command ConstantPool=18
+        "Return the raw bytes of the constant pool in the format of the "
+        "constant_pool item of the Class File Format in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "<p>Since JDWP version 1.6. Requires canGetConstantPool capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>.""
+        (Out
+            (referenceType refType "The class.")
+        )
+        (Reply
+            (int count "Total number of constant pool entries plus one. This "
+                       "corresponds to the constant_pool_count item of the "
+                       "Class File Format in "
+                       "<cite>The Java&trade; Virtual Machine Specification</cite>. ")
+            (Repeat bytes
+                (byte cpbytes "Raw bytes of constant pool")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error NOT_IMPLEMENTED   "If the target virtual machine does not "
+                                     "support the retrieval of constant pool information.")
+	    (Error ABSENT_INFORMATION "The Constant Pool information is "
+			              "absent for primitive and array types.")	    
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ClassType=3
+    (Command Superclass=1
+        "Returns the immediate superclass of a class."
+        (Out
+            (classType clazz "The class type ID.")
+        )
+        (Reply
+            (classType superclass 
+                "The superclass (null if the class ID for java.lang.Object is specified).")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "clazz is not the ID of a class.")
+            (Error INVALID_OBJECT    "clazz is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command SetValues=2
+        "Sets the value of one or more static fields. "
+	"Each field must be member of the class type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, the values of private "
+	"fields can be set. Final fields cannot be set."
+	"For primitive values, the value's type must match the "
+	"field's type exactly. For object values, there must exist a "
+	"widening reference conversion from the value's type to the 
+	"field's type and the field's type must be loaded. "
+        (Out
+            (classType clazz "The class type ID.")
+            (Repeat values "The number of fields to set."
+                (Group FieldValue "A Field/Value pair."
+                    (field fieldID "Field to set.")
+                    (untagged-value value "Value to put in the field.")
+                )
+            )
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "clazz is not the ID of a class.")
+            (Error CLASS_NOT_PREPARED)
+            (Error INVALID_OBJECT    "clazz is not a known ID or a value of an "
+                                     "object field is not a known ID.")
+            (Error INVALID_FIELDID)
+            (Error VM_DEAD)
+        ) 
+    )
+    (Command InvokeMethod=3
+        "Invokes a static method. "
+	"The method must be member of the class type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, private "
+	"methods can be invoked."
+	"<p>"
+	"The method invocation will occur in the specified thread. "
+	"Method invocation can occur only if the specified thread "
+	"has been suspended by an event. "
+	"Method invocation is not supported "
+	"when the target VM has been suspended by the front-end. "
+	"<p>"
+	"The specified method is invoked with the arguments in the specified "
+	"argument list. "
+	"The method invocation is synchronous; the reply packet is not "
+	"sent until the invoked method returns in the target VM. "
+	"The return value (possibly the void value) is "
+	"included in the reply packet. "
+	"If the invoked method throws an exception, the "
+	"exception object ID is set in the reply packet; otherwise, the "
+	"exception object ID is null. "
+	"<p>"
+	"For primitive arguments, the argument value's type must match the "
+	"argument's type exactly. For object arguments, there must exist a "
+	"widening reference conversion from the argument value's type to the "
+	"argument's type and the argument's type must be loaded. "
+	"<p>"
+        "By default, all threads in the target VM are resumed while "
+        "the method is being invoked if they were previously "
+        "suspended by an event or by command. "
+        "This is done to prevent the deadlocks "
+        "that will occur if any of the threads own monitors "
+        "that will be needed by the invoked method. It is possible that "
+        "breakpoints or other events might occur during the invocation. "
+        "Note, however, that this implicit resume acts exactly like "
+        "the ThreadReference resume command, so if the thread's suspend "
+        "count is greater than 1, it will remain in a suspended state "
+	"during the invocation. By default, when the invocation completes, "
+	"all threads in the target VM are suspended, regardless their state "
+	"before the invocation. "
+        "<p>"
+        "The resumption of other threads during the invoke can be prevented "
+        "by specifying the INVOKE_SINGLE_THREADED "
+        "bit flag in the <code>options</code> field; however, "
+        "there is no protection against or recovery from the deadlocks "
+        "described above, so this option should be used with great caution. "
+	"Only the specified thread will be resumed (as described for all "
+	"threads above). Upon completion of a single threaded invoke, the invoking thread "
+	"will be suspended once again. Note that any threads started during "
+	"the single threaded invocation will not be suspended when the "
+	"invocation completes. "
+	"<p>"
+        "If the target VM is disconnected during the invoke (for example, through "
+        "the VirtualMachine dispose command) the method invocation continues. "
+        (Out
+            (classType clazz "The class type ID.")
+            (threadObject thread "The thread in which to invoke.")
+            (method methodID "The method to invoke.")
+            (Repeat arguments 
+                (value arg "The argument value.")
+            )
+            (int options "Invocation <a href=\"#JDWP_InvokeOptions\">options</a>")
+        )
+        (Reply
+            (value returnValue "The returned value.")
+            (tagged-object exception "The thrown exception.")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "clazz is not the ID of a class.")
+            (Error INVALID_OBJECT    "clazz is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error INVALID_THREAD)
+            (Error THREAD_NOT_SUSPENDED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command NewInstance=4
+        "Creates a new object of this type, invoking the specified "
+	"constructor. The constructor method ID must be a member of "
+	"the class type."
+	"<p>"
+	"Instance creation will occur in the specified thread. "
+	"Instance creation can occur only if the specified thread "
+	"has been suspended by an event. "
+	"Method invocation is not supported "
+	"when the target VM has been suspended by the front-end. "
+	"<p>"
+	"The specified constructor is invoked with the arguments in the specified "
+	"argument list. "
+	"The constructor invocation is synchronous; the reply packet is not "
+	"sent until the invoked method returns in the target VM. "
+	"The return value (possibly the void value) is "
+	"included in the reply packet. "
+	"If the constructor throws an exception, the "
+	"exception object ID is set in the reply packet; otherwise, the "
+	"exception object ID is null. "
+	"<p>"
+	"For primitive arguments, the argument value's type must match the "
+	"argument's type exactly. For object arguments, there must exist a "
+	"widening reference conversion from the argument value's type to the "
+	"argument's type and the argument's type must be loaded. "
+	"<p>"
+        "By default, all threads in the target VM are resumed while "
+        "the method is being invoked if they were previously "
+        "suspended by an event or by command. "
+        "This is done to prevent the deadlocks "
+        "that will occur if any of the threads own monitors "
+        "that will be needed by the invoked method. It is possible that "
+        "breakpoints or other events might occur during the invocation. "
+        "Note, however, that this implicit resume acts exactly like "
+        "the ThreadReference resume command, so if the thread's suspend "
+        "count is greater than 1, it will remain in a suspended state "
+	"during the invocation. By default, when the invocation completes, "
+	"all threads in the target VM are suspended, regardless their state "
+	"before the invocation. "
+        "<p>"
+        "The resumption of other threads during the invoke can be prevented "
+        "by specifying the INVOKE_SINGLE_THREADED "
+        "bit flag in the <code>options</code> field; however, "
+        "there is no protection against or recovery from the deadlocks "
+        "described above, so this option should be used with great caution. "
+	"Only the specified thread will be resumed (as described for all "
+	"threads above). Upon completion of a single threaded invoke, the invoking thread "
+	"will be suspended once again. Note that any threads started during "
+	"the single threaded invocation will not be suspended when the "
+	"invocation completes. "
+        "<p>"
+        "If the target VM is disconnected during the invoke (for example, through "
+        "the VirtualMachine dispose command) the method invocation continues. "
+        (Out
+            (classType clazz "The class type ID.")
+            (threadObject thread "The thread in which to invoke the constructor.")
+            (method methodID "The constructor to invoke.")
+            (Repeat arguments 
+                (value arg "The argument value.")
+            )
+            (int options "Constructor invocation <a href=\"#JDWP_InvokeOptions\">options</a>")
+        )
+        (Reply
+            (tagged-object newObject "The newly created object, or null "
+	                             "if the constructor threw an exception.")
+            (tagged-object exception "The thrown exception, if any; otherwise, null.")
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "clazz is not the ID of a class.")
+            (Error INVALID_OBJECT    "clazz is not a known ID or a value of an "
+                                     "object parameter is not a known ID..")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error INVALID_OBJECT)
+            (Error INVALID_THREAD)
+            (Error THREAD_NOT_SUSPENDED)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ArrayType=4
+    (Command NewInstance=1
+        "Creates a new array object of this type with a given length."
+        (Out
+            (arrayType arrType "The array type of the new instance.")
+            (int length "The length of the array.")
+        )
+        (Reply  
+	    (tagged-object newArray "The newly created array object. ")
+        )
+        (ErrorSet
+            (Error INVALID_ARRAY)
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet InterfaceType=5
+)
+(CommandSet Method=6
+    (Command LineTable=1
+        "Returns line number information for the method, if present. "
+	"The line table maps source line numbers to the initial code index "
+	"of the line. The line table "
+	"is ordered by code index (from lowest to highest). The line number " 
+	"information is constant unless a new class definition is installed "
+	"using <a href=\"#JDWP_VirtualMachine_RedefineClasses\">RedefineClasses</a>."	
+        (Out
+            (referenceType refType "The class.")
+            (method methodID "The method.")
+        )
+        (Reply
+            (long start "Lowest valid code index for the method, >=0, or -1 if the method is native ")
+            (long end "Highest valid code index for the method, >=0, or -1 if the method is native")
+            (Repeat lines "The number of entries in the line table for this method."
+                (Group LineInfo
+                    (long lineCodeIndex "Initial code index of the line, "
+		    			"start <= lineCodeIndex < end")
+                    (int lineNumber "Line number.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command VariableTable=2
+        "Returns variable information for the method. The variable table "
+	"includes arguments and locals declared within the method. For "
+	"instance methods, the \"this\" reference is included in the "
+	"table. Also, synthetic variables may be present. "
+        (Out
+            (referenceType refType "The class.")
+            (method methodID "The method.")
+        )
+        (Reply
+            (int argCnt "The number of words in the frame used by arguments. "
+                        "Eight-byte arguments use two words; all others use one. ")
+            (Repeat slots "The number of variables."
+                (Group SlotInfo "Information about the variable."
+                    (long codeIndex
+		        "First code index at which the variable is visible (unsigned). "
+		        "Used in conjunction with <code>length</code>. "
+		        "The variable can be get or set only when the current "
+			"<code>codeIndex</code> <= current frame code index < <code>codeIndex + length</code> ")
+                    (string name "The variable's name.")
+                    (string signature "The variable type's JNI signature.")
+                    (int length 
+		        "Unsigned value used in conjunction with <code>codeIndex</code>. "
+		        "The variable can be get or set only when the current "
+			"<code>codeIndex</code> <= current frame code index < <code>code index + length</code> ")
+                    (int slot "The local variable's index in its frame")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error ABSENT_INFORMATION "there is no variable information for the method.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Bytecodes=3
+        "Retrieve the method's bytecodes as defined in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+	"Requires canGetBytecodes capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (referenceType refType "The class.")
+            (method methodID "The method.")
+        )
+        (Reply
+            (Repeat bytes
+                (byte bytecode "A Java bytecode.")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error NOT_IMPLEMENTED   "If the target virtual machine does not "
+                                     "support the retrieval of bytecodes.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command IsObsolete=4
+        "Determine if this method is obsolete. A method is obsolete if it has been replaced "
+	"by a non-equivalent method using the "
+	"<a href=\"#JDWP_VirtualMachine_RedefineClasses\">RedefineClasses</a> command. "
+	"The original and redefined methods are considered equivalent if their bytecodes are "
+	"the same except for indices into the constant pool and the referenced constants are "
+	"equal."
+        (Out
+            (referenceType refType "The class.")
+            (method methodID "The method.")
+        )
+        (Reply
+            (boolean isObsolete    "true if this method has been replaced"
+                                   "by a non-equivalent method using"
+				   "the RedefineClasses command.") 
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error NOT_IMPLEMENTED   "If the target virtual machine does "
+                                     "not support this query.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command VariableTableWithGeneric=5
+        "Returns variable information for the method, including "
+        "generic signatures for the variables. The variable table "
+	"includes arguments and locals declared within the method. For "
+	"instance methods, the \"this\" reference is included in the "
+	"table. Also, synthetic variables may be present. "
+	"Generic signatures are described in the signature attribute "
+        "section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>. "
+        "Since JDWP version 1.5."
+        (Out
+            (referenceType refType "The class.")
+            (method methodID "The method.")
+        )
+        (Reply
+            (int argCnt "The number of words in the frame used by arguments. "
+                        "Eight-byte arguments use two words; all others use one. ")
+            (Repeat slots "The number of variables."
+                (Group SlotInfo "Information about the variable."
+                    (long codeIndex
+		        "First code index at which the variable is visible (unsigned). "
+		        "Used in conjunction with <code>length</code>. "
+		        "The variable can be get or set only when the current "
+			"<code>codeIndex</code> <= current frame code index < <code>codeIndex + length</code> ")
+                    (string name "The variable's name.")
+                    (string signature "The variable type's JNI signature.")
+                    (string genericSignature "The variable type's generic "
+                         "signature or an empty string if there is none.")
+                    (int length 
+		        "Unsigned value used in conjunction with <code>codeIndex</code>. "
+		        "The variable can be get or set only when the current "
+			"<code>codeIndex</code> <= current frame code index < <code>code index + length</code> ")
+                    (int slot "The local variable's index in its frame")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_CLASS     "refType is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_OBJECT    "refType is not a known ID.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error ABSENT_INFORMATION "there is no variable information for the method.")
+            (Error VM_DEAD)
+        )
+    )
+
+) 
+(CommandSet Field=8
+)
+(CommandSet ObjectReference=9
+    (Command ReferenceType=1
+        "Returns the runtime type of the object. "
+        "The runtime type will be a class or an array. "
+        (Out
+            (object object "The object ID")
+        )
+        (Reply
+	    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+			      "of following reference type. ")
+            (referenceTypeID typeID "The runtime reference type.")
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+    (Command GetValues=2
+        "Returns the value of one or more instance fields. "
+	"Each field must be member of the object's type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, the values of private "
+	"fields can be obtained."
+        (Out
+            (object object "The object ID")
+            (Repeat fields "The number of values to get"
+                (Group Field
+                    (field fieldID "Field to get.")
+                )
+            )
+        )
+        (Reply
+            (Repeat values "The number of values returned, always equal to 'fields', "
+	    		   "the number of values to get. Field values are ordered "
+			   "in the reply in the same order as corresponding fieldIDs "
+ 			   "in the command."
+                (value value "The field value")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error INVALID_FIELDID)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SetValues=3
+        "Sets the value of one or more instance fields. "
+	"Each field must be member of the object's type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, the values of private "
+	"fields can be set. "
+	"For primitive values, the value's type must match the "
+	"field's type exactly. For object values, there must be a "
+	"widening reference conversion from the value's type to the 
+	"field's type and the field's type must be loaded. "
+        (Out
+            (object object "The object ID")
+            (Repeat values "The number of fields to set."
+                (Group FieldValue "A Field/Value pair."
+                    (field fieldID "Field to set.")
+                    (untagged-value value "Value to put in the field.")
+                )
+            )
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error INVALID_FIELDID)
+            (Error VM_DEAD)
+        ) 
+    )
+    (Command MonitorInfo=5
+        "Returns monitor information for an object. All threads int the VM must "
+	"be suspended."
+	"Requires canGetMonitorInfo capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (object object "The object ID")
+        )
+        (Reply
+            (threadObject owner "The monitor owner, or null if it is not currently owned.")
+            (int entryCount "The number of times the monitor has been entered.")
+            (Repeat waiters "The number of threads that are waiting for the monitor "
+	                    "0 if there is no current owner"
+                (threadObject thread "A thread waiting for this monitor.")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command InvokeMethod=6
+        "Invokes a instance method. "
+	"The method must be member of the object's type "
+	"or one of its superclasses, superinterfaces, or implemented interfaces. "
+	"Access control is not enforced; for example, private "
+	"methods can be invoked."
+	"<p>"
+	"The method invocation will occur in the specified thread. "
+	"Method invocation can occur only if the specified thread "
+	"has been suspended by an event. "
+	"Method invocation is not supported "
+	"when the target VM has been suspended by the front-end. "
+	"<p>"
+	"The specified method is invoked with the arguments in the specified "
+	"argument list. "
+	"The method invocation is synchronous; the reply packet is not "
+	"sent until the invoked method returns in the target VM. "
+	"The return value (possibly the void value) is "
+	"included in the reply packet. "
+	"If the invoked method throws an exception, the "
+	"exception object ID is set in the reply packet; otherwise, the "
+	"exception object ID is null. "
+	"<p>"
+	"For primitive arguments, the argument value's type must match the "
+	"argument's type exactly. For object arguments, there must be a "
+	"widening reference conversion from the argument value's type to the "
+	"argument's type and the argument's type must be loaded. "
+	"<p>"
+        "By default, all threads in the target VM are resumed while "
+        "the method is being invoked if they were previously "
+        "suspended by an event or by command. "
+        "This is done to prevent the deadlocks "
+        "that will occur if any of the threads own monitors "
+        "that will be needed by the invoked method. It is possible that "
+        "breakpoints or other events might occur during the invocation. "
+        "Note, however, that this implicit resume acts exactly like "
+        "the ThreadReference resume command, so if the thread's suspend "
+        "count is greater than 1, it will remain in a suspended state "
+	"during the invocation. By default, when the invocation completes, "
+	"all threads in the target VM are suspended, regardless their state "
+	"before the invocation. "
+        "<p>"
+        "The resumption of other threads during the invoke can be prevented "
+        "by specifying the INVOKE_SINGLE_THREADED "
+        "bit flag in the <code>options</code> field; however, "
+        "there is no protection against or recovery from the deadlocks "
+        "described above, so this option should be used with great caution. "
+	"Only the specified thread will be resumed (as described for all "
+	"threads above). Upon completion of a single threaded invoke, the invoking thread "
+	"will be suspended once again. Note that any threads started during "
+	"the single threaded invocation will not be suspended when the "
+	"invocation completes. "
+        "<p>"
+        "If the target VM is disconnected during the invoke (for example, through "
+        "the VirtualMachine dispose command) the method invocation continues. "
+        (Out
+            (object object "The object ID")
+            (threadObject thread "The thread in which to invoke.")
+            (classType clazz "The class type.")
+            (method methodID "The method to invoke.")
+            (Repeat arguments "The number of arguments."
+                (value arg "The argument value.")
+            )
+            (int options "Invocation <a href=\"#JDWP_InvokeOptions\">options</a>")
+        )
+        (Reply
+            (value returnValue "The returned value, or null if an exception is thrown.")
+            (tagged-object exception "The thrown exception, if any.")
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error INVALID_CLASS     "clazz is not the ID of a reference "
+                                     "type.")
+            (Error INVALID_METHODID  "methodID is not the ID of a method.")
+            (Error INVALID_THREAD)
+            (Error THREAD_NOT_SUSPENDED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command DisableCollection=7
+	"Prevents garbage collection for the given object. By "
+	"default all objects in back-end replies may be "
+	"collected at any time the target VM is running. A call to "
+	"this command guarantees that the object will not be "
+	"collected. The "
+	"<a href=\"#JDWP_ObjectReference_EnableCollection\">EnableCollection</a> "
+	"command can be used to "
+	"allow collection once again. "
+	"<p>"
+	"Note that while the target VM is suspended, no garbage "
+	"collection will occur because all threads are suspended. "
+	"The typical examination of variables, fields, and arrays "
+	"during the suspension is safe without explicitly disabling "
+	"garbage collection. "
+	"<p>"
+	"This method should be used sparingly, as it alters the "
+	"pattern of garbage collection in the target VM and, "
+	"consequently, may result in application behavior under the "
+	"debugger that differs from its non-debugged behavior. "
+	(Out 
+	    (object object "The object ID")
+	)
+	(Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+    (Command EnableCollection=8
+	"Permits garbage collection for this object. By default all "
+	"objects returned by JDWP may become unreachable in the target VM, "
+	"and hence may be garbage collected. A call to this command is "
+	"necessary only if garbage collection was previously disabled with "
+	"the <a href=\"#JDWP_ObjectReference_DisableCollection\">DisableCollection</a> "
+	"command."
+        (Out 
+            (object object "The object ID")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+    (Command IsCollected=9
+        "Determines whether an object has been garbage collected in the "
+	"target VM. "
+        (Out
+            (object object "The object ID")
+        )
+        (Reply
+            (boolean isCollected "true if the object has been collected; false otherwise")
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+    (Command ReferringObjects=10
+        "Returns objects that directly reference this object.  "
+        "Only objects that are reachable for the purposes "
+        "of garbage collection are returned. "
+        "Note that an object can also be referenced in other ways, "
+        "such as from a local variable in a stack frame, or from a JNI global "
+        "reference.  Such non-object referrers are not returned by this command. "
+        "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (object object "The object ID")
+            (int maxReferrers "Maximum number of referring objects to return. "
+                              "Must be non-negative. If zero, all referring "
+                              "objects are returned.")
+        )       
+        (Reply
+            (Repeat referringObjects "The number of objects that follow."
+                (tagged-object instance "An object that references this object.")
+             )
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT    "object is not a known ID.")
+            (Error ILLEGAL_ARGUMENT  "maxReferrers is less than zero.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+)
+
+(CommandSet StringReference=10
+    (Command Value=1
+        "Returns the characters contained in the string. "
+        (Out
+            (object stringObject "The String object ID. ")
+        )
+        (Reply
+            (string stringValue "UTF-8 representation of the string value.")
+       )
+        (ErrorSet
+            (Error INVALID_STRING)
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ThreadReference=11
+    (Command Name=1
+        "Returns the thread name. "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (string threadName "The thread name.")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Suspend=2
+        "Suspends the thread. "
+	"<p>"
+	"Unlike java.lang.Thread.suspend(), suspends of both "
+	"the virtual machine and individual threads are counted. Before "
+	"a thread will run again, it must be resumed the same number "
+	"of times it has been suspended. "
+	"<p>"
+	"Suspending single threads with command has the same "
+	"dangers java.lang.Thread.suspend(). If the suspended "
+	"thread holds a monitor needed by another running thread, "
+	"deadlock is possible in the target VM (at least until the "
+	"suspended thread is resumed again). "
+	"<p>"
+	"The suspended thread is guaranteed to remain suspended until "
+	"resumed through one of the JDI resume methods mentioned above; "
+	"the application in the target VM cannot resume the suspended thread "
+	"through {@link java.lang.Thread#resume}. "
+	"<p>"
+	"Note that this doesn't change the status of the thread (see the "
+	"<a href=\"#JDWP_ThreadReference_Status\">ThreadStatus</a> command.) "
+	"For example, if it was "
+	"Running, it will still appear running to other threads. "
+	(Out
+	    (threadObject thread "The thread object ID. ")
+	)
+	(Reply "none"
+	)
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Resume=3
+	"Resumes the execution of a given thread. If this thread was "
+	"not previously suspended by the front-end, "
+	"calling this command has no effect. "
+	"Otherwise, the count of pending suspends on this thread is "
+	"decremented. If it is decremented to 0, the thread will "
+	"continue to execute. "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Status=4
+        "Returns the current status of a thread. The thread status "
+	"reply indicates the thread status the last time it was running. "
+	"the suspend status provides information on the thread's "
+	"suspension, if any."
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply 
+            (int threadStatus "One of the thread status codes "
+                    "See <a href=\"#JDWP_ThreadStatus\">JDWP.ThreadStatus</a>")
+            (int suspendStatus "One of the suspend status codes "
+                    "See <a href=\"#JDWP_SuspendStatus\">JDWP.SuspendStatus</a>")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command ThreadGroup=5
+        "Returns the thread group that contains a given thread. "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (threadGroupObject group "The thread group of this thread. ")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Frames=6
+        "Returns the current call stack of a suspended thread. "
+        "The sequence of frames starts with "
+        "the currently executing frame, followed by its caller, "
+        "and so on. The thread must be suspended, and the returned "
+	"frameID is valid only while the thread is suspended. "
+        (Out
+            (threadObject thread "The thread object ID. ")
+            (int startFrame "The index of the first frame to retrieve.")
+            (int length 
+                        "The count of frames to retrieve "
+                        "(-1 means all remaining). ")
+        )
+        (Reply
+            (Repeat frames "The number of frames retreived"
+                (Group Frame
+                    (frame frameID "The ID of this frame. ")
+                    (location location "The current location of this frame")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command FrameCount=7
+        "Returns the count of frames on this thread's stack. "
+	"The thread must be suspended, and the returned "	   	
+	"count is valid only while the thread is suspended. "	
+        "Returns JDWP.Error.errorThreadNotSuspended if not suspended. "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (int frameCount "The count of frames on this thread's stack. ")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command OwnedMonitors=8
+        "Returns the objects whose monitors have been entered by this thread. "
+	"The thread must be suspended, and the returned information is "
+	"relevant only while the thread is suspended. "
+	"Requires canGetOwnedMonitorInfo capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (Repeat owned "The number of owned monitors"
+                (tagged-object monitor "An owned monitor")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command CurrentContendedMonitor=9
+        "Returns the object, if any, for which this thread is waiting. The "
+	"thread may be waiting to enter a monitor, or it may be waiting, via "
+	"the java.lang.Object.wait method, for another thread to invoke the "
+	"notify method. "
+	"The thread must be suspended, and the returned information is "
+	"relevant only while the thread is suspended. "
+	"Requires canGetCurrentContendedMonitor capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (tagged-object monitor "The contended monitor, or null if "
+	                           "there is no current contended monitor. ")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command Stop=10
+        "Stops the thread with an asynchronous exception, as if done by "
+	"java.lang.Thread.stop "
+        (Out
+            (threadObject thread "The thread object ID. ")
+            (object throwable "Asynchronous exception. This object must "
+	                      "be an instance of java.lang.Throwable or a subclass")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT "If thread is not a known ID or the asynchronous "
+                                  "exception has been garbage collected.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Interrupt=11
+        "Interrupt the thread, as if done by java.lang.Thread.interrupt "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command SuspendCount=12
+        "Get the suspend count for this thread. The suspend count is the  "
+	"number of times the thread has been suspended through the "
+	"thread-level or VM-level suspend commands without a corresponding resume "
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply 
+            (int suspendCount "The number of outstanding suspends of this thread. ")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command OwnedMonitorsStackDepthInfo=13
+        "Returns monitor objects owned by the thread, along with stack depth at which "
+        "the monitor was acquired. Returns stack depth of -1  if "
+        "the implementation cannot determine the stack depth "
+        "(e.g., for monitors acquired by JNI MonitorEnter)."
+	"The thread must be suspended, and the returned information is "
+	"relevant only while the thread is suspended. "
+	"Requires canGetMonitorFrameInfo capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+	"<p>Since JDWP version 1.6. "
+
+        (Out
+            (threadObject thread "The thread object ID. ")
+        )
+        (Reply
+            (Repeat owned "The number of owned monitors"
+	       (Group monitor
+                  (tagged-object monitor "An owned monitor")
+		  (int stack_depth "Stack depth location where monitor was acquired")
+               )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command ForceEarlyReturn=14
+        "Force a method to return before it reaches a return "
+        "statement.  "
+	"<p>"
+        "The method which will return early is referred to as the "
+        "called method. The called method is the current method (as "
+        "defined by the Frames section in "
+        "<cite>The Java&trade; Virtual Machine Specification</cite>) "
+        "for the specified thread at the time this command "
+        "is received. "
+	"<p>"
+        "The specified thread must be suspended. "
+        "The return occurs when execution of Java programming "
+        "language code is resumed on this thread. Between sending this "
+        "command and resumption of thread execution, the "
+        "state of the stack is undefined. "
+	"<p>"
+        "No further instructions are executed in the called "
+        "method. Specifically, finally blocks are not executed. Note: "
+        "this can cause inconsistent states in the application. "
+	"<p>"
+        "A lock acquired by calling the called method (if it is a "
+        "synchronized method) and locks acquired by entering "
+        "synchronized blocks within the called method are "
+        "released. Note: this does not apply to JNI locks or "
+        "java.util.concurrent.locks locks. "
+	"<p>"
+        "Events, such as MethodExit, are generated as they would be in "
+        "a normal return. "
+	"<p>"
+        "The called method must be a non-native Java programming "
+        "language method. Forcing return on a thread with only one "
+        "frame on the stack causes the thread to exit when resumed. "
+	"<p>"
+        "For void methods, the value must be a void value. " 
+        "For methods that return primitive values, the value's type must "
+        "match the return type exactly.  For object values, there must be a "
+	"widening reference conversion from the value's type to the "
+	"return type type and the return type must be loaded. "
+        "<p>"
+        "Since JDWP version 1.6. Requires canForceEarlyReturn capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (threadObject thread "The thread object ID. ")
+            (value value "The value to return. ")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "Thread or value is not a known ID.")
+            (Error THREAD_NOT_SUSPENDED)
+            (Error THREAD_NOT_ALIVE)
+            (Error OPAQUE_FRAME      "Attempted to return early from "
+                                     "a frame corresponding to a native "
+                                     "method. Or the implementation is "
+                                     "unable to provide this functionality "
+                                     "on this frame.")
+            (Error NO_MORE_FRAMES)
+            (Error NOT_IMPLEMENTED)
+            (Error TYPE_MISMATCH   "Value is not an appropriate type for the "
+                                   "return value of the method.")
+            (Error VM_DEAD)
+        )
+    )
+
+)
+(CommandSet ThreadGroupReference=12
+    (Command Name=1
+        "Returns the thread group name. "
+        (Out
+            (threadGroupObject group "The thread group object ID. ")
+        )
+        (Reply
+            (string groupName "The thread group's name.")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD_GROUP)
+            (Error INVALID_OBJECT    "group is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Parent=2
+        "Returns the thread group, if any, which contains a given thread group. "
+        (Out
+            (threadGroupObject group "The thread group object ID. ")
+        )
+        (Reply
+            (threadGroupObject parentGroup "The parent thread group object, or "
+	                                   "null if the given thread group "
+					   "is a top-level thread group")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD_GROUP)
+            (Error INVALID_OBJECT    "group is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+    (Command Children=3
+        "Returns the live threads and active thread groups directly contained "
+        "in this thread group. Threads and thread groups in child "
+	"thread groups are not included. "
+        "A thread is alive if it has been started and has not yet been stopped. "
+        "See <a href=../../../api/java/lang/ThreadGroup.html>java.lang.ThreadGroup </a>
+        "for information about active ThreadGroups.
+        (Out
+            (threadGroupObject group "The thread group object ID. ")
+        )
+        (Reply
+            (Repeat childThreads "The number of live child threads. "
+                (threadObject childThread "A direct child thread ID. ")
+            )
+            (Repeat childGroups "The number of active child thread groups. "
+                (threadGroupObject childGroup "A direct child thread group ID. ")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_THREAD_GROUP)
+            (Error INVALID_OBJECT    "group is not a known ID.")
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ArrayReference=13
+    (Command Length=1
+        "Returns the number of components in a given array. "
+        (Out
+            (arrayObject arrayObject "The array object ID. ")
+        )
+        (Reply
+            (int arrayLength "The length of the array.")
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT    "arrayObject is not a known ID.")
+            (Error INVALID_ARRAY)
+            (Error VM_DEAD)
+        )
+    )
+    (Command GetValues=2
+        "Returns a range of array components. The specified range must "
+	"be within the bounds of the array. "
+        (Out
+            (arrayObject arrayObject "The array object ID. ")
+            (int firstIndex "The first index to retrieve.")
+            (int length "The number of components to retrieve.")
+        )
+        (Reply
+            (typed-sequence values "The retrieved values. If the values "
+	                           "are objects, they are tagged-values; "
+				   "otherwise, they are untagged-values")
+        )
+        (ErrorSet
+            (Error INVALID_LENGTH "If index is beyond the end of this array.")
+            (Error INVALID_OBJECT    "arrayObject is not a known ID.")
+            (Error INVALID_ARRAY)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SetValues=3
+        "Sets a range of array components. The specified range must "
+	"be within the bounds of the array. "
+	"For primitive values, each value's type must match the "
+	"array component type exactly. For object values, there must be a "
+	"widening reference conversion from the value's type to the 
+	"array component type and the array component type must be loaded. "
+        (Out
+            (arrayObject arrayObject "The array object ID. ")
+            (int firstIndex "The first index to set.")
+            (Repeat values "The number of values to set. "
+                (untagged-value value "A value to set. ")
+            )
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_LENGTH "If index is beyond the end of this array.")
+            (Error INVALID_OBJECT    "arrayObject is not a known ID.")
+            (Error INVALID_ARRAY)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ClassLoaderReference=14
+    (Command VisibleClasses=1
+	"Returns a list of all classes which this class loader has "
+	"been requested to load. This class loader is considered to be "
+	"an <i>initiating</i> class loader for each class in the returned "
+	"list. The list contains each "
+	"reference type defined by this loader and any types for which "
+	"loading was delegated by this class loader to another class loader. "
+	"<p>"
+	"The visible class list has useful properties with respect to "
+	"the type namespace. A particular type name will occur at most "
+	"once in the list. Each field or variable declared with that "
+	"type name in a class defined by "
+	"this class loader must be resolved to that single type. "
+	"<p>"
+	"No ordering of the returned list is guaranteed. "
+        (Out
+            (classLoaderObject classLoaderObject "The class loader object ID. ")
+        )
+        (Reply
+            (Repeat classes "The number of visible classes. "
+                (Group ClassInfo
+                    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+		                      "of following reference type. ")
+                    (referenceTypeID typeID  
+                        "A class visible to this class loader.")
+                )
+            )
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error INVALID_CLASS_LOADER)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet EventRequest=15
+    (Command Set=1
+        "Set an event request. When the event described by this request "
+	"occurs, an <a href=\"#JDWP_Event\">event</a> is sent from the "
+	"target VM. If an event occurs that has not been requested then it is not sent "
+	"from the target VM. The two exceptions to this are the VM Start Event and "
+	"the VM Death Event which are automatically generated events - see "
+	"<a href=\"#JDWP_Event_Composite\">Composite Command</a> for further details."	
+        (Out
+            (byte eventKind "Event kind to request. "
+                      "See <a href=\"#JDWP_EventKind\">JDWP.EventKind</a> "
+		      "for a complete list of events that can be requested; "
+                      "some events may require a capability in order to be requested. "
+		      )
+            (byte suspendPolicy 
+                      "What threads are suspended when this event occurs? "
+                      "Note that the order of events and command replies "
+		      "accurately reflects the order in which threads are "
+		      "suspended and resumed. For example, if a "
+		      "<a href=\"#JDWP_VirtualMachine_Resume\">VM-wide resume</a> "
+		      "is processed before an event occurs which suspends the "
+		      "VM, the reply to the resume command will be written to "
+		      "the transport before the suspending event.")
+            (Repeat modifiers "Constraints used to control the number "
+	                      "of generated events."
+                              "Modifiers specify additional tests that "
+			      "an event must satisfy before it is placed "
+			      "in the event queue. Events are filtered by "
+                              "applying each modifier to an event in the "
+			      "order they are specified in this collection "
+			      "Only events that satisfy all modifiers "
+			      "are reported. A value of 0 means there are no "
+			      "modifiers in the request."
+			      "<p>"
+                              "Filtering can improve "
+                              "debugger performance dramatically by 
+			      "reducing the "
+                              "amount of event traffic sent from the "
+			      "target VM to the debugger VM. "
+                (Select Modifier
+                    (byte modKind "Modifier kind")
+                    (Alt Count=1 
+			"Limit the requested event to be reported at most once after a "
+			"given number of occurrences.  The event is not reported "
+			"the first <code>count - 1</code> times this filter is reached. "
+			"To request a one-off event, call this method with a count of 1. "
+			"<p>"
+			"Once the count reaches 0, any subsequent filters in this request "
+			"are applied. If none of those filters cause the event to be "
+			"suppressed, the event is reported. Otherwise, the event is not "
+			"reported. In either case subsequent events are never reported for "
+			"this request. "
+			"This modifier can be used with any event kind."
+			
+			(int count "Count before event. One for one-off.")
+                    )
+                    (Alt Conditional=2 "Conditional on expression"
+                        (int exprID "For the future")
+                    )
+                    (Alt ThreadOnly=3 
+		        "Restricts reported events to "
+			"those in the given thread. "
+			"This modifier can be used with any event kind "
+			"except for class unload. "
+			
+                        (threadObject thread "Required thread")
+                    )
+                    (Alt ClassOnly=4 
+			"For class prepare events, restricts the events "
+			"generated by this request to be the "
+			"preparation of the given reference type and any subtypes. "
+			"For monitor wait and waited events, restricts the events "
+        		"generated by this request to those whose monitor object "
+        		"is of the given reference type or any of its subtypes. "
+			"For other events, restricts the events generated "
+			"by this request to those "
+			"whose location is in the given reference type or any of its subtypes. "
+			"An event will be generated for any location in a reference type that can "
+			"be safely cast to the given reference type. "
+			"This modifier can be used with any event kind except "
+			"class unload, thread start, and thread end. "
+     
+                        (referenceType clazz "Required class")
+                    )
+                    (Alt ClassMatch=5 
+			"Restricts reported events to those for classes whose name "
+			"matches the given restricted regular expression. "
+			"For class prepare events, the prepared class name "
+			"is matched. For class unload events, the "
+			"unloaded class name is matched. For monitor wait "
+			"and waited events, the name of the class of the "
+			"monitor object is matched. For other events, "
+			"the class name of the event's location is matched. "
+			"This modifier can be used with any event kind except "
+			"thread start and thread end. "
+			
+                        (string classPattern "Required class pattern. "
+				"Matches are limited to exact matches of the "
+				"given class pattern and matches of patterns that "
+				"begin or end with '*'; for example, "
+				"\"*.Foo\" or \"java.*\". "
+			)
+			
+                    )
+                    (Alt ClassExclude=6 
+			"Restricts reported events to those for classes whose name "
+			"does not match the given restricted regular expression. "
+			"For class prepare events, the prepared class name "
+			"is matched. For class unload events, the "
+			"unloaded class name is matched. For monitor wait and "
+			"waited events, the name of the class of the monitor "
+			"object is matched. For other events, "
+			"the class name of the event's location is matched. "
+			"This modifier can be used with any event kind except "
+			"thread start and thread end. "
+			
+                        (string classPattern "Disallowed class pattern. "
+				"Matches are limited to exact matches of the "
+				"given class pattern and matches of patterns that "
+				"begin or end with '*'; for example, "
+				"\"*.Foo\" or \"java.*\". "
+			)
+                    )
+                    (Alt LocationOnly=7 
+		        "Restricts reported events to those that occur at "
+			"the given location. "
+			"This modifier can be used with "
+			"breakpoint, field access, field modification, "
+			"step, and exception event kinds. "
+			
+                        (location loc "Required location")
+                    )
+                    (Alt ExceptionOnly=8 
+		        "Restricts reported exceptions by their class and "
+			"whether they are caught or uncaught. "
+			"This modifier can be used with "
+			"exception event kinds only. "
+			
+                        (referenceType exceptionOrNull 
+                                "Exception to report. Null (0) means report "
+				"exceptions of all types. "
+				"A non-null type restricts the reported exception "
+				"events to exceptions of the given type or "
+				"any of its subtypes. "
+			)
+                        (boolean caught "Report caught exceptions")
+                        (boolean uncaught "Report uncaught exceptions. "
+				"Note that it "
+				"is not always possible to determine whether an "
+				"exception is caught or uncaught at the time it is "
+				"thrown. See the exception event catch location under "
+				"<a href=\"#JDWP_Event_Composite\">composite events</a> "
+				"for more information. "
+			)
+			
+                    )
+                    (Alt FieldOnly=9 
+			"Restricts reported events to those that occur for "
+			"a given field. "
+			"This modifier can be used with "
+			"field access and field modification event kinds only. "
+			
+                        (referenceType declaring "Type in which field is declared.")
+                        (field fieldID "Required field")
+                    )
+                    (Alt Step=10 
+		        "Restricts reported step events "
+			"to those which satisfy "
+			"depth and size constraints. "
+			"This modifier can be used with "
+			"step event kinds only. "
+			
+                        (threadObject thread "Thread in which to step")
+                        (int size "size of each step. "
+                           "See <a href=\"#JDWP_StepSize\">JDWP.StepSize</a>")
+                        (int depth "relative call stack limit. "
+                           "See <a href=\"#JDWP_StepDepth\">JDWP.StepDepth</a>")
+                    )
+                    (Alt InstanceOnly=11
+			"Restricts reported events to those whose "
+			"active 'this' object is the given object. "
+			"Match value is the null object for static methods. "
+			"This modifier can be used with any event kind "
+			"except class prepare, class unload, thread start, "
+			"and thread end. Introduced in JDWP version 1.4."
+     
+                        (object instance "Required 'this' object")
+                    )
+                    (Alt SourceNameMatch=12
+			"Restricts reported class prepare events to those "
+			"for reference types which have a source name "
+                        "which matches the given restricted regular expression. "
+                        "The source names are determined by the reference type's "
+                        "<a href=\"#JDWP_ReferenceType_SourceDebugExtension\"> "
+                        "SourceDebugExtension</a>. "
+			"This modifier can only be used with class prepare "
+                        "events. "
+                        "Since JDWP version 1.6. Requires the canUseSourceNameFilters "
+                        "capability - see "
+                        "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+
+                        (string sourceNamePattern "Required source name pattern. "
+				"Matches are limited to exact matches of the "
+				"given pattern and matches of patterns that "
+				"begin or end with '*'; for example, "
+				"\"*.Foo\" or \"java.*\". "
+                        )
+                    )
+
+                )
+            ) 
+        )
+        (Reply
+            (int requestID "ID of created request")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_CLASS)
+            (Error INVALID_STRING)
+            (Error INVALID_OBJECT)
+            (Error INVALID_COUNT)
+            (Error INVALID_FIELDID)
+            (Error INVALID_METHODID)
+            (Error INVALID_LOCATION)
+            (Error INVALID_EVENT_TYPE)
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+    (Command Clear=2
+        "Clear an event request. See <a href=\"#JDWP_EventKind\">JDWP.EventKind</a> "
+        "for a complete list of events that can be cleared. Only the event request matching " 
+	"the specified event kind and requestID is cleared. If there isn't a matching event "
+	"request the command is a no-op and does not result in an error. Automatically "
+	"generated events do not have a corresponding event request and may not be cleared "
+	"using this command."
+        (Out
+            (byte eventKind "Event kind to clear")
+            (int requestID "ID of request to clear")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+	    (Error INVALID_EVENT_TYPE)
+        )
+    )
+    (Command ClearAllBreakpoints=3
+        "Removes all set breakpoints, a no-op if there are no breakpoints set."
+        (Out "none"
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet StackFrame=16
+    (Command GetValues=1
+        "Returns the value of one or more local variables in a "
+	"given frame. Each variable must be visible at the frame's code index. "
+	"Even if local variable information is not available, values can "
+	"be retrieved if the front-end is able to "
+	"determine the correct local variable index. (Typically, this "
+	"index can be determined for method arguments from the method "
+	"signature without access to the local variable table information.) "
+        (Out
+            (threadObject thread "The frame's thread. ")
+            (frame frame "The frame ID. ")
+            (Repeat slots "The number of values to get. "
+                (Group SlotInfo 
+                    (int slot "The local variable's index in the frame. ")
+                    (byte sigbyte "A <a href=\"#JDWP_Tag\">tag</a> "
+		                  "identifying the type of the variable ")
+                )
+            )   
+        )
+        (Reply
+            (Repeat values "The number of values retrieved, always equal to slots, "
+	    		   "the number of values to get."	    
+                (value slotValue "The value of the local variable. ")
+            )
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT)
+            (Error INVALID_FRAMEID)
+	    (Error INVALID_SLOT)
+            (Error VM_DEAD)
+        )
+    )
+    (Command SetValues=2
+        "Sets the value of one or more local variables. "
+	"Each variable must be visible at the current frame code index. "
+	"For primitive values, the value's type must match the "
+	"variable's type exactly. For object values, there must be a "
+	"widening reference conversion from the value's type to the 
+	"variable's type and the variable's type must be loaded. "
+	"<p>"
+	"Even if local variable information is not available, values can "
+	"be set, if the front-end is able to "
+	"determine the correct local variable index. (Typically, this 
+	"index can be determined for method arguments from the method "
+	"signature without access to the local variable table information.) "
+        (Out
+            (threadObject thread "The frame's thread. ")
+            (frame frame "The frame ID. ")
+            (Repeat slotValues "The number of values to set. "
+                (Group SlotInfo 
+                    (int slot "The slot ID. ")
+                    (value slotValue "The value to set. ")
+                )
+            )   
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT)
+            (Error INVALID_FRAMEID)
+            (Error VM_DEAD)
+        )
+    )
+    (Command ThisObject=3
+        "Returns the value of the 'this' reference for this frame. "
+        "If the frame's method is static or native, the reply "
+        "will contain the null object reference. "
+        (Out
+            (threadObject thread "The frame's thread. ")
+            (frame frame "The frame ID. ")
+        )
+        (Reply
+            (tagged-object objectThis "The 'this' object for this frame. ")
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT)
+            (Error INVALID_FRAMEID)
+            (Error VM_DEAD)
+        )
+    )
+    (Command PopFrames=4	
+	"Pop the top-most stack frames of the thread stack, up to, and including 'frame'. "
+	"The thread must be suspended to perform this command. "
+	"The top-most stack frames are discarded and the stack frame previous to 'frame' "
+	"becomes the current frame. The operand stack is restored -- the argument values "
+	"are added back and if the invoke was not <code>invokestatic</code>, "
+	"<code>objectref</code> is added back as well. The Java virtual machine "
+	"program counter is restored to the opcode of the invoke instruction."	
+	"<p>"
+        "Since JDWP version 1.4. Requires canPopFrames capability - see "
+	"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+        (Out
+            (threadObject thread "The thread object ID. ")
+            (frame frame "The frame ID. ")
+        )
+        (Reply "none"
+        )
+        (ErrorSet
+            (Error INVALID_THREAD)
+            (Error INVALID_OBJECT    "thread is not a known ID.")
+            (Error INVALID_FRAMEID)
+            (Error THREAD_NOT_SUSPENDED)
+            (Error NO_MORE_FRAMES)
+            (Error INVALID_FRAMEID)
+            (Error NOT_IMPLEMENTED)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet ClassObjectReference=17
+    (Command ReflectedType = 1
+        "Returns the reference type reflected by this class object."
+        (Out
+            (classObject classObject "The class object. ")
+        )
+        (Reply
+	    (byte refTypeTag  "<a href=\"#JDWP_TypeTag\">Kind</a> "
+			      "of following reference type. ")
+	    (referenceTypeID typeID "reflected reference type")
+        )
+        (ErrorSet
+            (Error INVALID_OBJECT)
+            (Error VM_DEAD)
+        )
+    )
+)
+(CommandSet Event=64
+    (Command Composite=100
+	"Several events may occur at a given time in the target VM. "
+	"For example, there may be more than one breakpoint request "
+	"for a given location "
+	"or you might single step to the same location as a "
+	"breakpoint request.  These events are delivered "
+	"together as a composite event.  For uniformity, a " 
+	"composite event is always used "
+	"to deliver events, even if there is only one event to report. "
+	"<P>"
+	"The events that are grouped in a composite event are restricted in the "
+	"following ways: "
+	"<P>"
+	"<UL>"
+	"<LI>Only with other thread start events for the same thread:"
+	"    <UL>"
+	"    <LI>Thread Start Event"
+	"    </UL>"
+	"<LI>Only with other thread death events for the same thread:"
+	"    <UL>"
+	"    <LI>Thread Death Event"
+	"    </UL>"
+	"<LI>Only with other class prepare events for the same class:"
+	"    <UL>"
+	"    <LI>Class Prepare Event"
+	"    </UL>"
+	"<LI>Only with other class unload events for the same class:"
+	"    <UL>"
+	"    <LI>Class Unload Event"
+	"    </UL>"
+	"<LI>Only with other access watchpoint events for the same field access:"
+	"    <UL>"
+	"    <LI>Access Watchpoint Event"
+	"    </UL>"
+	"<LI>Only with other modification watchpoint events for the same field "
+	"modification:"
+	"    <UL>"
+	"    <LI>Modification Watchpoint Event"
+	"    </UL>"
+	"<LI>Only with other Monitor contended enter events for the same monitor object: "
+	"    <UL>"
+	"    <LI>Monitor Contended Enter Event"
+	"    </UL>"
+	"<LI>Only with other Monitor contended entered events for the same monitor object: "
+	"    <UL>"
+	"    <LI>Monitor Contended Entered Event"
+	"    </UL>"
+	"<LI>Only with other Monitor wait events for the same monitor object: "
+	"    <UL>"
+	"    <LI>Monitor Wait Event"
+	"    </UL>"
+	"<LI>Only with other Monitor waited events for the same monitor object: "
+	"    <UL>"
+	"    <LI>Monitor Waited Event"
+	"    </UL>"
+	"<LI>Only with other ExceptionEvents for the same exception occurrance:"
+	"    <UL>"
+	"    <LI>ExceptionEvent"
+	"    </UL>"
+	"<LI>Only with other members of this group, at the same location "
+	"and in the same thread: "
+	"    <UL>"
+	"    <LI>Breakpoint Event"
+	"    <LI>Step Event"
+	"    <LI>Method Entry Event"
+	"    <LI>Method Exit Event"
+	"    </UL>"
+	"</UL>"
+	"<P>"
+	"The VM Start Event and VM Death Event are automatically generated events. "
+	"This means they do not need to be requested using the "
+	"<a href=\"#JDWP_EventRequest_Set\">EventRequest.Set</a> command. "
+	"The VM Start event signals the completion of VM initialization. The VM Death "
+	"event signals the termination of the VM." 	
+	"If there is a debugger connected at the time when an automatically generated "
+	"event occurs it is sent from the target VM. Automatically generated events may "
+	"also be requested using the EventRequest.Set command and thus multiple events "
+	"of the same event kind will be sent from the target VM when an event occurs."
+	"Automatically generated events are sent with the requestID field "
+	"in the Event Data set to 0. The value of the suspendPolicy field in the "
+	"Event Data depends on the event. For the automatically generated VM Start "
+	"Event the value of suspendPolicy is not defined and is therefore implementation "
+	"or configuration specific. In the Sun implementation, for example, the "
+	"suspendPolicy is specified as an option to the JDWP agent at launch-time."
+	"The automatically generated VM Death Event will have the suspendPolicy set to "
+	"NONE."			
+	
+       (Event "Generated event"
+            (byte suspendPolicy 
+                "Which threads where suspended by this composite event?")
+            (Repeat events "Events in set."
+                (Select Events
+                    (byte eventKind "Event kind selector")
+                    (Alt VMStart=JDWP.EventKind.VM_START 
+			"Notification of initialization of a target VM.  This event is "
+			"received before the main thread is started and before any "
+			"application code has been executed. Before this event occurs "
+			"a significant amount of system code has executed and a number "
+			"of system classes have been loaded. "
+			"This event is always generated by the target VM, even "
+			"if not explicitly requested."
+			
+                     (int requestID 
+			     "Request that generated event (or 0 if this "
+			     "event is automatically generated.")
+                        (threadObject thread "Initial thread")
+                    ) 
+                    (Alt SingleStep=JDWP.EventKind.SINGLE_STEP 
+			"Notification of step completion in the target VM. The step event "
+			"is generated before the code at its location is executed. "
+			
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Stepped thread")
+                        (location location "Location stepped to")
+                    ) 
+                    (Alt Breakpoint=JDWP.EventKind.BREAKPOINT
+			"Notification of a breakpoint in the target VM. The breakpoint event "
+			"is generated before the code at its location is executed. "
+			
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Thread which hit breakpoint")
+                        (location location "Location hit")
+                    ) 
+                    (Alt MethodEntry=JDWP.EventKind.METHOD_ENTRY
+			 "Notification of a method invocation in the target VM. This event "
+			 "is generated before any code in the invoked method has executed. "
+			 "Method entry events are generated for both native and non-native "
+			 "methods. "
+			 "<P>"
+			 "In some VMs method entry events can occur for a particular thread "
+			 "before its thread start event occurs if methods are called "
+			 "as part of the thread's initialization. "
+
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Thread which entered method")
+                        (location location "The initial executable location in the method.")
+                    ) 
+                    (Alt MethodExit=JDWP.EventKind.METHOD_EXIT
+			 "Notification of a method return in the target VM. This event "
+			 "is generated after all code in the method has executed, but the "
+			 "location of this event is the last executed location in the method. "
+			 "Method exit events are generated for both native and non-native "
+			 "methods. Method exit events are not generated if the method terminates "
+			 "with a thrown exception. "
+			 
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Thread which exited method")
+                        (location location "Location of exit")
+                    ) 
+                    (Alt MethodExitWithReturnValue=JDWP.EventKind.METHOD_EXIT_WITH_RETURN_VALUE
+			 "Notification of a method return in the target VM. This event "
+			 "is generated after all code in the method has executed, but the "
+			 "location of this event is the last executed location in the method. "
+			 "Method exit events are generated for both native and non-native "
+			 "methods. Method exit events are not generated if the method terminates "
+			 "with a thrown exception. <p>Since JDWP version 1.6. "
+			 
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Thread which exited method")
+                        (location location "Location of exit")
+                        (value value "Value that will be returned by the method")
+                    )
+                    (Alt MonitorContendedEnter=JDWP.EventKind.MONITOR_CONTENDED_ENTER		    
+			 "Notification that a thread in the target VM is attempting "
+			 "to enter a monitor that is already acquired by another thread. "
+			 "Requires canRequestMonitorEvents capability - see "
+			 "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+			 "<p>Since JDWP version 1.6. "
+
+                        (int requestID 
+                                "Request that generated event")
+		        (threadObject thread "Thread which is trying to enter the monitor")
+			(tagged-object object "Monitor object reference")
+		        (location location "Location of contended monitor enter")
+                    )
+                    (Alt MonitorContendedEntered=JDWP.EventKind.MONITOR_CONTENDED_ENTERED		    
+ 			 "Notification of a thread in the target VM is entering a monitor "
+		         "after waiting for it to be released by another thread. "
+			 "Requires canRequestMonitorEvents capability - see "
+			 "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+			 "<p>Since JDWP version 1.6. "
+
+                        (int requestID 
+                                "Request that generated event")
+		        (threadObject thread "Thread which entered monitor")
+			(tagged-object object "Monitor object reference")
+		        (location location "Location of contended monitor enter")
+                    )
+                    (Alt MonitorWait=JDWP.EventKind.MONITOR_WAIT		    
+                         "Notification of a thread about to wait on a monitor object. "
+			 "Requires canRequestMonitorEvents capability - see "
+			 "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+			 "<p>Since JDWP version 1.6. "
+ 
+                        (int requestID 
+                                "Request that generated event")
+		        (threadObject thread "Thread which is about to wait")
+			(tagged-object object "Monitor object reference")
+		        (location location "Location at which the wait will occur")
+			(long     timeout  "Thread wait time in milliseconds")
+                    )
+                    (Alt MonitorWaited=JDWP.EventKind.MONITOR_WAITED		
+			 "Notification that a thread in the target VM has finished waiting on "
+			 "Requires canRequestMonitorEvents capability - see "
+			 "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "
+		         "a monitor object. "
+			 "<p>Since JDWP version 1.6. "
+
+                        (int requestID 
+                                "Request that generated event")
+		        (threadObject thread "Thread which waited")
+			(tagged-object object "Monitor object reference")
+		        (location location "Location at which the wait occured")
+			(boolean  timed_out "True if timed out")
+                    )
+                    (Alt Exception=JDWP.EventKind.EXCEPTION
+			 "Notification of an exception in the target VM. "
+			 "If the exception is thrown from a non-native method, "
+			 "the exception event is generated at the location where the "
+			 "exception is thrown. "
+			 "If the exception is thrown from a native method, the exception event "
+			 "is generated at the first non-native location reached after the exception "
+			 "is thrown. "
+
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Thread with exception")
+                        (location location "Location of exception throw "
+			"(or first non-native location after throw if thrown from a native method)")
+                        (tagged-object exception "Thrown exception")
+                        (location catchLocation 
+			    "Location of catch, or 0 if not caught. An exception "
+			    "is considered to be caught if, at the point of the throw, the "
+			    "current location is dynamically enclosed in a try statement that "
+			    "handles the exception. (See the JVM specification for details). "
+			    "If there is such a try statement, the catch location is the "
+			    "first location in the appropriate catch clause. "
+			    "<p>"
+			    "If there are native methods in the call stack at the time of the "
+			    "exception, there are important restrictions to note about the "
+			    "returned catch location. In such cases, "
+			    "it is not possible to predict whether an exception will be handled "
+			    "by some native method on the call stack. "
+			    "Thus, it is possible that exceptions considered uncaught "
+			    "here will, in fact, be handled by a native method and not cause "
+			    "termination of the target VM. Furthermore, it cannot be assumed that the "
+			    "catch location returned here will ever be reached by the throwing "
+			    "thread. If there is "
+			    "a native frame between the current location and the catch location, "
+			    "the exception might be handled and cleared in that native method "
+			    "instead. "
+			    "<p>"
+			    "Note that compilers can generate try-catch blocks in some cases "
+			    "where they are not explicit in the source code; for example, "
+			    "the code generated for <code>synchronized</code> and "
+			    "<code>finally</code> blocks can contain implicit try-catch blocks. "
+			    "If such an implicitly generated try-catch is "
+			    "present on the call stack at the time of the throw, the exception "
+			    "will be considered caught even though it appears to be uncaught from "
+			    "examination of the source code. "
+			)
+                    ) 
+                    (Alt ThreadStart=JDWP.EventKind.THREAD_START
+			"Notification of a new running thread in the target VM. "
+			"The new thread can be the result of a call to "
+			"<code>java.lang.Thread.start</code> or the result of "
+			"attaching a new thread to the VM though JNI. The "
+			"notification is generated by the new thread some time before "
+			"its execution starts. "
+			"Because of this timing, it is possible to receive other events "
+			"for the thread before this event is received. (Notably, "
+			"Method Entry Events and Method Exit Events might occur "
+			"during thread initialization. "
+			"It is also possible for the "
+   		        "<a href=\"#JDWP_VirtualMachine_AllThreads\">VirtualMachine AllThreads</a> "
+			"command to return "
+			"a thread before its thread start event is received. "
+			"<p>"
+			"Note that this event gives no information "
+			"about the creation of the thread object which may have happened "
+			"much earlier, depending on the VM being debugged. "
+      	    
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Started thread")
+                    ) 
+                    (Alt ThreadDeath=JDWP.EventKind.THREAD_DEATH
+			"Notification of a completed thread in the target VM. The "
+			"notification is generated by the dying thread before it terminates. "
+			"Because of this timing, it is possible "
+			"for {@link VirtualMachine#allThreads} to return this thread "
+			"after this event is received. "
+			"<p>"
+			"Note that this event gives no information "
+			"about the lifetime of the thread object. It may or may not be collected "
+			"soon depending on what references exist in the target VM. "
+		    
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Ending thread")
+                    ) 
+                    (Alt ClassPrepare=JDWP.EventKind.CLASS_PREPARE
+			"Notification of a class prepare in the target VM. See the JVM "
+			"specification for a definition of class preparation. Class prepare "
+			"events are not generated for primtiive classes (for example, "
+			"java.lang.Integer.TYPE). "
+			
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Preparing thread. "
+			     "In rare cases, this event may occur in a debugger system "
+			     "thread within the target VM. Debugger threads take precautions "
+			     "to prevent these events, but they cannot be avoided under some "
+			     "conditions, especially for some subclasses of "
+			     "java.lang.Error. "
+			     "If the event was generated by a debugger system thread, the "
+			     "value returned by this method is null, and if the requested  "
+			     "<a href=\"#JDWP_SuspendPolicy\">suspend policy</a> "
+			     "for the event was EVENT_THREAD "
+			     "all threads will be suspended instead, and the "
+			     "composite event's suspend policy will reflect this change. "
+			     "<p>"
+			     "Note that the discussion above does not apply to system threads "
+			     "created by the target VM during its normal (non-debug) operation. "
+			)
+                        (byte refTypeTag  "Kind of reference type. "
+                           "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>")
+                        (referenceTypeID typeID "Type being prepared")
+                        (string signature "Type signature")
+                        (int status "Status of type. "
+                         "See <a href=\"#JDWP_ClassStatus\">JDWP.ClassStatus</a>")
+                    ) 
+                    (Alt ClassUnload=JDWP.EventKind.CLASS_UNLOAD
+			 "Notification of a class unload in the target VM. "
+			 "<p>"
+			 "There are severe constraints on the debugger back-end during "
+			 "garbage collection, so unload information is greatly limited.	"
+			 
+                        (int requestID "Request that generated event")
+                        (string signature "Type signature")
+                    )
+                    (Alt FieldAccess=JDWP.EventKind.FIELD_ACCESS
+			"Notification of a field access in the target VM. "
+			"Field modifications "
+			"are not considered field accesses. "
+			"Requires canWatchFieldAccess capability - see "
+			"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+			
+                      (int requestID "Request that generated event")
+                        (threadObject thread "Accessing thread")
+                        (location location "Location of access")
+                        (byte refTypeTag  "Kind of reference type. "
+                           "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>")
+                        (referenceTypeID typeID "Type of field")
+                        (field fieldID "Field being accessed")
+                        (tagged-object object
+                                "Object being accessed (null=0 for statics")
+                    )
+                    (Alt FieldModification=JDWP.EventKind.FIELD_MODIFICATION
+			"Notification of a field modification in the target VM. "
+			"Requires canWatchFieldModification capability - see "
+			"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."
+			
+                        (int requestID "Request that generated event")
+                        (threadObject thread "Modifying thread")
+                        (location location "Location of modify")
+                        (byte refTypeTag  "Kind of reference type. "
+                           "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>")
+                        (referenceTypeID typeID "Type of field")
+                        (field fieldID "Field being modified")
+                        (tagged-object object
+                                "Object being modified (null=0 for statics")
+                        (value valueToBe "Value to be assigned")
+                    )
+		    (Alt VMDeath=JDWP.EventKind.VM_DEATH		    
+                        (int requestID 
+                                "Request that generated event")
+                    ) 
+                )
+            )
+        )
+    )
+)
+(ConstantSet Error
+    (Constant NONE                   =0   "No error has occurred.")
+    (Constant INVALID_THREAD         =10  "Passed thread is null, is not a valid thread or has exited.")
+    (Constant INVALID_THREAD_GROUP   =11  "Thread group invalid.")   
+    (Constant INVALID_PRIORITY       =12  "Invalid priority.")   
+    (Constant THREAD_NOT_SUSPENDED   =13  "If the specified thread has not been "
+                                          "suspended by an event.")   
+    (Constant THREAD_SUSPENDED       =14  "Thread already suspended.")   
+    (Constant THREAD_NOT_ALIVE       =15  "Thread has not been started or is now dead.")   
+
+    (Constant INVALID_OBJECT         =20  "If this reference type has been unloaded "
+                                          "and garbage collected.")   
+    (Constant INVALID_CLASS          =21  "Invalid class.")  
+    (Constant CLASS_NOT_PREPARED     =22  "Class has been loaded but not yet prepared.")   
+    (Constant INVALID_METHODID       =23  "Invalid method.")   
+    (Constant INVALID_LOCATION       =24  "Invalid location.")   
+    (Constant INVALID_FIELDID        =25  "Invalid field.") 
+    (Constant INVALID_FRAMEID        =30  "Invalid jframeID.")   
+    (Constant NO_MORE_FRAMES         =31  "There are no more Java or JNI frames on the "
+                                          "call stack.")   
+    (Constant OPAQUE_FRAME           =32  "Information about the frame is not available.")  
+    (Constant NOT_CURRENT_FRAME      =33  "Operation can only be performed on current frame.")
+    (Constant TYPE_MISMATCH          =34  "The variable is not an appropriate type for "
+                                          "the function used.")   
+    (Constant INVALID_SLOT           =35  "Invalid slot.")  
+    (Constant DUPLICATE              =40  "Item already set.")   
+    (Constant NOT_FOUND              =41  "Desired element not found.")   
+    (Constant INVALID_MONITOR        =50  "Invalid monitor.")   
+    (Constant NOT_MONITOR_OWNER      =51  "This thread doesn't own the monitor.")   
+    (Constant INTERRUPT              =52  "The call has been interrupted before completion.")   
+    (Constant INVALID_CLASS_FORMAT   =60  "The virtual machine attempted to read a class "
+                                          "file and determined that the file is malformed "
+                                          "or otherwise cannot be interpreted as a class file.")
+    (Constant CIRCULAR_CLASS_DEFINITION
+                                     =61  "A circularity has been detected while "
+                                          "initializing a class.")
+    (Constant FAILS_VERIFICATION     =62  "The verifier detected that a class file, "
+                                          "though well formed, contained some sort of "
+                                          "internal inconsistency or security problem.")   
+    (Constant ADD_METHOD_NOT_IMPLEMENTED
+                                     =63  "Adding methods has not been implemented.")   
+    (Constant SCHEMA_CHANGE_NOT_IMPLEMENTED
+                                     =64  "Schema change has not been implemented.")   
+    (Constant INVALID_TYPESTATE      =65  "The state of the thread has been modified, "
+                                          "and is now inconsistent.")   
+    (Constant HIERARCHY_CHANGE_NOT_IMPLEMENTED
+                                     =66  "A direct superclass is different for the new class "
+                                          "version, or the set of directly implemented "
+                                          "interfaces is different "
+                                          "and canUnrestrictedlyRedefineClasses is false.")   
+    (Constant DELETE_METHOD_NOT_IMPLEMENTED
+                                     =67  "The new class version does not declare a method "
+                                          "declared in the old class version "
+                                          "and canUnrestrictedlyRedefineClasses is false.")   
+    (Constant UNSUPPORTED_VERSION    =68  "A class file has a version number not supported "
+                                          "by this VM.")   
+    (Constant NAMES_DONT_MATCH       =69  "The class name defined in the new class file is "
+                                          "different from the name in the old class object.")   
+    (Constant CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED 
+                                     =70  "The new class version has different modifiers and "
+                                          "and canUnrestrictedlyRedefineClasses is false.")   
+    (Constant METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED
+                                     =71  "A method in the new class version has "
+                                          "different modifiers "
+                                          "than its counterpart in the old class version and "
+                                          "and canUnrestrictedlyRedefineClasses is false.")   
+    (Constant NOT_IMPLEMENTED        =99  "The functionality is not implemented in "
+                                          "this virtual machine.")
+    (Constant NULL_POINTER           =100 "Invalid pointer.")   
+    (Constant ABSENT_INFORMATION     =101 "Desired information is not available.")   
+    (Constant INVALID_EVENT_TYPE     =102 "The specified event type id is not recognized.")   
+    (Constant ILLEGAL_ARGUMENT       =103 "Illegal argument.")   
+    (Constant OUT_OF_MEMORY          =110 "The function needed to allocate memory and "
+                                          "no more memory was available for allocation.")   
+    (Constant ACCESS_DENIED          =111 "Debugging has not been enabled in this "
+                                          "virtual machine. JVMTI cannot be used.")   
+    (Constant VM_DEAD                =112 "The virtual machine is not running.")   
+    (Constant INTERNAL               =113 "An unexpected internal error has occurred.")   
+    (Constant UNATTACHED_THREAD      =115 "The thread being used to call this function "
+                                          "is not attached to the virtual machine. "
+                                          "Calls must be made from attached threads.")   
+    (Constant INVALID_TAG            =500 "object type id or class tag.")  
+    (Constant ALREADY_INVOKING       =502 "Previous invoke not complete.")   
+    (Constant INVALID_INDEX          =503 "Index is invalid.")   
+    (Constant INVALID_LENGTH         =504 "The length is invalid.")   
+    (Constant INVALID_STRING         =506 "The string is invalid.")   
+    (Constant INVALID_CLASS_LOADER   =507 "The class loader is invalid.")   
+    (Constant INVALID_ARRAY          =508 "The array is invalid.")   
+    (Constant TRANSPORT_LOAD         =509 "Unable to load the transport.")   
+    (Constant TRANSPORT_INIT         =510 "Unable to initialize the transport.")
+    (Constant NATIVE_METHOD          =511  )
+    (Constant INVALID_COUNT          =512 "The count is invalid.")   
+)
+(ConstantSet EventKind
+    (Constant SINGLE_STEP            =1   )
+    (Constant BREAKPOINT             =2   )
+    (Constant FRAME_POP              =3   )
+    (Constant EXCEPTION              =4   )
+    (Constant USER_DEFINED           =5   )
+    (Constant THREAD_START           =6   )
+    (Constant THREAD_DEATH           =7   )
+    (Constant THREAD_END             =7   "obsolete - was used in jvmdi")
+    (Constant CLASS_PREPARE          =8   )
+    (Constant CLASS_UNLOAD           =9   )
+    (Constant CLASS_LOAD             =10  )
+    (Constant FIELD_ACCESS           =20  )
+    (Constant FIELD_MODIFICATION     =21  )
+    (Constant EXCEPTION_CATCH        =30  )
+    (Constant METHOD_ENTRY           =40  )
+    (Constant METHOD_EXIT            =41  )
+    (Constant METHOD_EXIT_WITH_RETURN_VALUE =42  )
+    (Constant MONITOR_CONTENDED_ENTER          =43  )
+    (Constant MONITOR_CONTENDED_ENTERED        =44 )
+    (Constant MONITOR_WAIT           =45 )
+    (Constant MONITOR_WAITED         =46 )
+    (Constant VM_START               =90  )
+    (Constant VM_INIT                =90  "obsolete - was used in jvmdi")
+    (Constant VM_DEATH               =99  )
+    (Constant VM_DISCONNECTED        =100 "Never sent across JDWP")
+)
+
+(ConstantSet ThreadStatus
+    (Constant ZOMBIE                 =0  )
+    (Constant RUNNING                =1  )
+    (Constant SLEEPING               =2  )
+    (Constant MONITOR                =3  )
+    (Constant WAIT                   =4  )
+)
+
+(ConstantSet SuspendStatus
+    (Constant SUSPEND_STATUS_SUSPENDED = 0x1 )             
+)
+(ConstantSet ClassStatus
+    (Constant VERIFIED               =1  )
+    (Constant PREPARED               =2  )
+    (Constant INITIALIZED            =4  )
+    (Constant ERROR                  =8  )
+)
+(ConstantSet TypeTag
+    (Constant CLASS=1 "ReferenceType is a class. ")             
+    (Constant INTERFACE=2 "ReferenceType is an interface. ")             
+    (Constant ARRAY=3 "ReferenceType is an array. ")             
+)
+(ConstantSet Tag
+    (Constant ARRAY = '[' "'[' - an array object (objectID size). ")
+    (Constant BYTE = 'B' "'B' - a byte value (1 byte).")
+    (Constant CHAR = 'C' "'C' - a character value (2 bytes).")
+    (Constant OBJECT = 'L' "'L' - an object (objectID size).")
+    (Constant FLOAT = 'F' "'F' - a float value (4 bytes).")
+    (Constant DOUBLE = 'D' "'D' - a double value (8 bytes).")
+    (Constant INT = 'I' "'I' - an int value (4 bytes).")
+    (Constant LONG = 'J' "'J' - a long value (8 bytes).")
+    (Constant SHORT = 'S' "'S' - a short value (2 bytes).")
+    (Constant VOID = 'V' "'V' - a void value (no bytes).")
+    (Constant BOOLEAN = 'Z' "'Z' - a boolean value (1 byte).")
+    (Constant STRING = 's' "'s' - a String object (objectID size). ")
+    (Constant THREAD = 't' "'t' - a Thread object (objectID size). ")
+    (Constant THREAD_GROUP = 'g' 
+        "'g' - a ThreadGroup object (objectID size). ")
+    (Constant CLASS_LOADER = 'l' 
+        "'l' - a ClassLoader object (objectID size). ")
+    (Constant CLASS_OBJECT = 'c' 
+        "'c' - a class object object (objectID size). ")
+)
+
+(ConstantSet StepDepth
+    (Constant INTO = 0 
+        "Step into any method calls that occur before the end of the step. ")
+    (Constant OVER = 1 
+        "Step over any method calls that occur before the end of the step. ")
+    (Constant OUT = 2 
+        "Step out of the current method. ")
+)
+
+(ConstantSet StepSize
+    (Constant MIN = 0 
+        "Step by the minimum possible amount (often a bytecode instruction). ")
+    (Constant LINE = 1 
+        "Step to the next source line unless there is no line number information in which case a MIN step is done instead.")
+)
+
+(ConstantSet SuspendPolicy
+    (Constant NONE = 0 
+        "Suspend no threads when this event is encountered. ")
+    (Constant EVENT_THREAD = 1 
+        "Suspend the event thread when this event is encountered. ")
+    (Constant ALL = 2 
+        "Suspend all threads when this event is encountered. ")
+)
+	
+(ConstantSet InvokeOptions
+    "The invoke options are a combination of zero or more of the following bit flags:"
+    (Constant INVOKE_SINGLE_THREADED = 0x01
+        "otherwise, all threads started. ")
+    (Constant INVOKE_NONVIRTUAL = 0x02
+        "otherwise, normal virtual invoke (instance methods only)")
+)
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/jprt.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,46 @@
+#
+# Copyright (c) 2006, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# JPRT rule to build this workspace
+
+JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip
+
+jprt_build_product:  all images
+	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
+	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+
+jprt_build_fastdebug: fastdebug images
+	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
+	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+
+jprt_build_debug: debug images 
+	( $(CD) $(OUTPUTDIR)/j2sdk-image && \
+	  $(ZIPEXE) -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+
+#
+# Phonies to avoid accidents.
+#
+.PHONY: jprt_build_product jprt_build_fastdebug jprt_build_debug
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/jprt.properties	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,309 @@
+#
+# Copyright (c) 2006, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Properties for jprt
+
+# Release to build for
+jprt.tools.default.release=jdk8
+
+# The different build flavors we want, we override here so we just get these 2
+jprt.build.flavors=product,fastdebug
+
+# Standard list of jprt build targets for this source tree
+jprt.build.targets= 						\
+    solaris_sparc_5.10-{product|fastdebug}, 			\
+    solaris_sparcv9_5.10-{product|fastdebug}, 			\
+    solaris_i586_5.10-{product|fastdebug}, 			\
+    solaris_x64_5.10-{product|fastdebug}, 			\
+    linux_i586_2.6-{product|fastdebug}, 			\
+    linux_x64_2.6-{product|fastdebug}, 				\
+    windows_i586_5.1-{product|fastdebug}, 			\
+    windows_x64_5.2-{product|fastdebug}
+
+# User can select the test set with jprt submit "-testset name" option
+jprt.my.test.set=${jprt.test.set}
+
+# Standard vm test target
+jprt.vm.default.test.targets=					\
+    solaris_sparc_5.10-product-c1-jvm98, 			\
+    solaris_sparcv9_5.10-product-c2-jvm98, 			\
+    solaris_i586_5.10-product-c1-jvm98, 			\
+    solaris_x64_5.10-product-c2-jvm98, 				\
+    linux_i586_2.6-product-{c1|c2}-jvm98, 			\
+    linux_x64_2.6-product-c2-jvm98, 				\
+    windows_i586_5.1-product-c1-jvm98, 				\
+    windows_x64_5.2-product-c2-jvm98
+
+# Select vm testlist to use (allow for testset to be empty too)
+jprt.vm.all.test.targets=${jprt.vm.default.test.targets}
+jprt.vm..test.targets=${jprt.vm.default.test.targets} 
+jprt.test.targets=${jprt.vm.${jprt.my.test.set}.test.targets} 
+
+# Default jdk test targets in test/Makefile (no fastdebug & limited c2)
+jprt.make.rule.default.test.targets=				\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_beans1, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_beans1, 		\
+    solaris_i586_5.10-product-c1-jdk_beans1, 			\
+    solaris_x64_5.10-product-c2-jdk_beans1, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_beans1, 			\
+    linux_x64_2.6-product-c2-jdk_beans1, 			\
+    windows_i586_5.1-product-c1-jdk_beans1, 			\
+    windows_x64_5.2-product-c2-jdk_beans1, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_io, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_io, 			\
+    solaris_i586_5.10-product-c1-jdk_io, 			\
+    solaris_x64_5.10-product-c2-jdk_io, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_io, 			\
+    linux_x64_2.6-product-c2-jdk_io, 				\
+    windows_i586_5.1-product-c1-jdk_io, 			\
+    windows_x64_5.2-product-c2-jdk_io, 				\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_lang, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_lang, 			\
+    solaris_i586_5.10-product-c1-jdk_lang, 			\
+    solaris_x64_5.10-product-c2-jdk_lang, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_lang, 			\
+    linux_x64_2.6-product-c2-jdk_lang, 				\
+    windows_i586_5.1-product-c1-jdk_lang, 			\
+    windows_x64_5.2-product-c2-jdk_lang, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_math, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_math, 			\
+    solaris_i586_5.10-product-c1-jdk_math, 			\
+    solaris_x64_5.10-product-c2-jdk_math, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_math, 			\
+    linux_x64_2.6-product-c2-jdk_math, 				\
+    windows_i586_5.1-product-c1-jdk_math, 			\
+    windows_x64_5.2-product-c2-jdk_math, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_misc, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_misc, 			\
+    solaris_i586_5.10-product-c1-jdk_misc, 			\
+    solaris_x64_5.10-product-c2-jdk_misc, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_misc, 			\
+    linux_x64_2.6-product-c2-jdk_misc, 				\
+    windows_i586_5.1-product-c1-jdk_misc, 			\
+    windows_x64_5.2-product-c2-jdk_misc, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_net, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_net, 			\
+    solaris_i586_5.10-product-c1-jdk_net, 			\
+    solaris_x64_5.10-product-c2-jdk_net, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_net, 			\
+    linux_x64_2.6-product-c2-jdk_net, 				\
+    windows_i586_5.1-product-c1-jdk_net, 			\
+    windows_x64_5.2-product-c2-jdk_net, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_nio1, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_nio1, 			\
+    solaris_i586_5.10-product-c1-jdk_nio1, 			\
+    solaris_x64_5.10-product-c2-jdk_nio1, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_nio1, 			\
+    linux_x64_2.6-product-c2-jdk_nio1, 				\
+    windows_i586_5.1-product-c1-jdk_nio1, 			\
+    windows_x64_5.2-product-c2-jdk_nio1, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_nio2, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_nio2, 			\
+    solaris_i586_5.10-product-c1-jdk_nio2, 			\
+    solaris_x64_5.10-product-c2-jdk_nio2, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_nio2, 			\
+    linux_x64_2.6-product-c2-jdk_nio2, 				\
+    windows_i586_5.1-product-c1-jdk_nio2, 			\
+    windows_x64_5.2-product-c2-jdk_nio2, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_nio3, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_nio3, 			\
+    solaris_i586_5.10-product-c1-jdk_nio3, 			\
+    solaris_x64_5.10-product-c2-jdk_nio3, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_nio3, 			\
+    linux_x64_2.6-product-c2-jdk_nio3, 				\
+    windows_i586_5.1-product-c1-jdk_nio3, 			\
+    windows_x64_5.2-product-c2-jdk_nio3, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_security1, 		\
+    solaris_sparcv9_5.10-product-c2-jdk_security1, 		\
+    solaris_i586_5.10-product-c1-jdk_security1, 		\
+    solaris_x64_5.10-product-c2-jdk_security1, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_security1, 		\
+    linux_x64_2.6-product-c2-jdk_security1, 			\
+    windows_i586_5.1-product-c1-jdk_security1, 			\
+    windows_x64_5.2-product-c2-jdk_security1, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_text, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_text, 			\
+    solaris_i586_5.10-product-c1-jdk_text, 			\
+    solaris_x64_5.10-product-c2-jdk_text, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_text, 			\
+    linux_x64_2.6-product-c2-jdk_text, 				\
+    windows_i586_5.1-product-c1-jdk_text, 			\
+    windows_x64_5.2-product-c2-jdk_text, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_tools1, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_tools1, 		\
+    solaris_i586_5.10-product-c1-jdk_tools1, 			\
+    solaris_x64_5.10-product-c2-jdk_tools1, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_tools1, 			\
+    linux_x64_2.6-product-c2-jdk_tools1, 			\
+    windows_i586_5.1-product-c1-jdk_tools1, 			\
+    windows_x64_5.2-product-c2-jdk_tools1, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_util, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_util, 			\
+    solaris_i586_5.10-product-c1-jdk_util, 			\
+    solaris_x64_5.10-product-c2-jdk_util, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_util, 			\
+    linux_x64_2.6-product-c2-jdk_util, 				\
+    windows_i586_5.1-product-c1-jdk_util, 			\
+    windows_x64_5.2-product-c2-jdk_util
+
+# All jdk test targets in test/Makefile (still no fastdebug & limited c2)
+jprt.make.rule.all.test.targets=    				\
+    								\
+   ${jprt.make.rule.default.test.targets}, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_awt, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_awt, 			\
+    solaris_i586_5.10-product-c1-jdk_awt, 			\
+    solaris_x64_5.10-product-c2-jdk_awt, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_awt, 			\
+    linux_x64_2.6-product-c2-jdk_awt, 				\
+    windows_i586_5.1-product-c1-jdk_awt, 			\
+    windows_x64_5.2-product-c2-jdk_awt, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_beans2, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_beans2, 		\
+    solaris_i586_5.10-product-c1-jdk_beans2, 			\
+    solaris_x64_5.10-product-c2-jdk_beans2, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_beans2, 			\
+    linux_x64_2.6-product-c2-jdk_beans2, 			\
+    windows_i586_5.1-product-c1-jdk_beans2, 			\
+    windows_x64_5.2-product-c2-jdk_beans2, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_beans3, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_beans3, 		\
+    solaris_i586_5.10-product-c1-jdk_beans3, 			\
+    solaris_x64_5.10-product-c2-jdk_beans3, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_beans3, 			\
+    linux_x64_2.6-product-c2-jdk_beans3, 			\
+    windows_i586_5.1-product-c1-jdk_beans3, 			\
+    windows_x64_5.2-product-c2-jdk_beans3, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_management1, 		\
+    solaris_sparcv9_5.10-product-c2-jdk_management1, 		\
+    solaris_i586_5.10-product-c1-jdk_management1, 		\
+    solaris_x64_5.10-product-c2-jdk_management1, 		\
+    linux_i586_2.6-product-{c1|c2}-jdk_management1, 		\
+    linux_x64_2.6-product-c2-jdk_management1, 			\
+    windows_i586_5.1-product-c1-jdk_management1, 		\
+    windows_x64_5.2-product-c2-jdk_management1, 		\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_management2, 		\
+    solaris_sparcv9_5.10-product-c2-jdk_management2, 		\
+    solaris_i586_5.10-product-c1-jdk_management2, 		\
+    solaris_x64_5.10-product-c2-jdk_management2, 		\
+    linux_i586_2.6-product-{c1|c2}-jdk_management2, 		\
+    linux_x64_2.6-product-c2-jdk_management2, 			\
+    windows_i586_5.1-product-c1-jdk_management2, 		\
+    windows_x64_5.2-product-c2-jdk_management2, 		\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_rmi, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_rmi, 			\
+    solaris_i586_5.10-product-c1-jdk_rmi, 			\
+    solaris_x64_5.10-product-c2-jdk_rmi, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_rmi, 			\
+    linux_x64_2.6-product-c2-jdk_rmi, 				\
+    windows_i586_5.1-product-c1-jdk_rmi, 			\
+    windows_x64_5.2-product-c2-jdk_rmi, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_security2, 		\
+    solaris_sparcv9_5.10-product-c2-jdk_security2, 		\
+    solaris_i586_5.10-product-c1-jdk_security2, 		\
+    solaris_x64_5.10-product-c2-jdk_security2, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_security2, 		\
+    linux_x64_2.6-product-c2-jdk_security2, 			\
+    windows_i586_5.1-product-c1-jdk_security2, 			\
+    windows_x64_5.2-product-c2-jdk_security2, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_security3, 		\
+    solaris_sparcv9_5.10-product-c2-jdk_security3, 		\
+    solaris_i586_5.10-product-c1-jdk_security3, 		\
+    solaris_x64_5.10-product-c2-jdk_security3, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_security3, 		\
+    linux_x64_2.6-product-c2-jdk_security3, 			\
+    windows_i586_5.1-product-c1-jdk_security3, 			\
+    windows_x64_5.2-product-c2-jdk_security3, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_sound, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_sound, 			\
+    solaris_i586_5.10-product-c1-jdk_sound, 			\
+    solaris_x64_5.10-product-c2-jdk_sound, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_sound, 			\
+    linux_x64_2.6-product-c2-jdk_sound, 			\
+    windows_i586_5.1-product-c1-jdk_sound, 			\
+    windows_x64_5.2-product-c2-jdk_sound, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_swing, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_swing, 			\
+    solaris_i586_5.10-product-c1-jdk_swing, 			\
+    solaris_x64_5.10-product-c2-jdk_swing, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_swing, 			\
+    linux_x64_2.6-product-c2-jdk_swing, 			\
+    windows_i586_5.1-product-c1-jdk_swing, 			\
+    windows_x64_5.2-product-c2-jdk_swing, 			\
+    								\
+    solaris_sparc_5.10-product-c1-jdk_tools2, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_tools2, 		\
+    solaris_i586_5.10-product-c1-jdk_tools2, 			\
+    solaris_x64_5.10-product-c2-jdk_tools2, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_tools2, 			\
+    linux_x64_2.6-product-c2-jdk_tools2, 			\
+    windows_i586_5.1-product-c1-jdk_tools2, 			\
+    windows_x64_5.2-product-c2-jdk_tools2
+
+# JCK test targets in test/Makefile (no fastdebug & limited c2, windows broken)
+jprt.my.jck.test.target.set=					\
+    solaris_sparc_5.10-product-c1-JCK7TESTRULE, 		\
+    solaris_sparcv9_5.10-product-c2-JCK7TESTRULE, 		\
+    solaris_i586_5.10-product-c1-JCK7TESTRULE, 			\
+    solaris_x64_5.10-product-c2-JCK7TESTRULE, 			\
+    linux_i586_2.6-product-c1-JCK7TESTRULE, 			\
+    linux_x64_2.6-product-c2-JCK7TESTRULE
+
+# JCK testset targets (e.g. jprt submit -testset jck ... )
+jprt.make.rule.jck.test.targets=				\
+    ${jprt.my.jck.test.target.set:JCK7TESTRULE=jck7devtools},   \
+    ${jprt.my.jck.test.target.set:JCK7TESTRULE=jck7runtime},    \
+    ${jprt.my.jck.test.target.set:JCK7TESTRULE=jck7compiler}
+
+# Select list to use (allow for testset to be empty too)
+jprt.make.rule..test.targets=${jprt.make.rule.default.test.targets} 
+jprt.make.rule.test.targets=${jprt.make.rule.${jprt.my.test.set}.test.targets} 
+
+# Directories to be excluded from the source bundles
+jprt.bundle.exclude.src.dirs=build dist webrev
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/launchers/mapfile-amd64	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/launchers/mapfile-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,48 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+#		_mcount;
+		__fsr;
+		__fsr_init_value;
+		__longdouble_used;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/launchers/mapfile-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,47 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+		__cg92_used;
+		__xargc;
+		__xargv;
+		__fsr_init_value;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/launchers/mapfile-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,48 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Specify what global symbols we export.  Note that we're not really
+# interested in declaring a version, simply scoping the file is sufficient.
+#
+
+SUNWprivate_1.1 {
+	global:
+		main;		# Provides basic adb symbol offsets
+		environ;	# Public symbols and required by Java run time
+		_environ;
+		__environ_lock;
+		___Argv;	# The following are private, but as they are
+		_start;		# exported from ctr1/crtn, the clever hacker
+		_init;		# might know about them.  However note, that
+		_fini;		# their use is strictly not supported.
+		_lib_version;
+		__xargc;
+		__xargv;
+		__fsr_init_value;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libattach/mapfile-linux	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,43 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Java_sun_tools_attach_LinuxVirtualMachine_checkPermissions;
+	    Java_sun_tools_attach_LinuxVirtualMachine_close;
+	    Java_sun_tools_attach_LinuxVirtualMachine_connect;
+	    Java_sun_tools_attach_LinuxVirtualMachine_getLinuxThreadsManager;
+	    Java_sun_tools_attach_LinuxVirtualMachine_isLinuxThreads;
+	    Java_sun_tools_attach_LinuxVirtualMachine_open;
+	    Java_sun_tools_attach_LinuxVirtualMachine_sendQuitTo;
+            Java_sun_tools_attach_LinuxVirtualMachine_sendQuitToChildrenOf;
+	    Java_sun_tools_attach_LinuxVirtualMachine_socket;
+	    Java_sun_tools_attach_LinuxVirtualMachine_read;
+	    Java_sun_tools_attach_LinuxVirtualMachine_write;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libattach/mapfile-solaris	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,38 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+            Java_sun_tools_attach_SolarisVirtualMachine_checkPermissions;
+            Java_sun_tools_attach_SolarisVirtualMachine_enqueue;
+            Java_sun_tools_attach_SolarisVirtualMachine_open;
+	    Java_sun_tools_attach_SolarisVirtualMachine_close;
+	    Java_sun_tools_attach_SolarisVirtualMachine_read;
+	    Java_sun_tools_attach_SolarisVirtualMachine_sigquit;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libdt_socket/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,33 @@
+#
+# Copyright (c) 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    jdwpTransport_OnLoad;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libfontmanager/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,61 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+                getSunFontIDs;
+                newLayoutTableCache; 
+                freeLayoutTableCache;
+                isNullScalerContext;
+                Java_sun_font_NullFontScaler_getNullScalerContext;
+                Java_sun_font_NullFontScaler_getGlyphImage;
+                Java_sun_font_SunFontManager_initIDs;
+                Java_sun_font_StrikeCache_getGlyphCacheDescription;
+                Java_sun_font_StrikeCache_freeIntPointer;
+                Java_sun_font_StrikeCache_freeLongPointer;
+                Java_sun_font_StrikeCache_freeIntMemory;
+                Java_sun_font_StrikeCache_freeLongMemory;
+                Java_sun_font_SunLayoutEngine_initGVIDs;
+                Java_sun_font_SunLayoutEngine_nativeLayout;
+                Java_sun_font_X11TextRenderer_doDrawGlyphList;
+		Java_sun_java2d_loops_DrawGlyphListAA_DrawGlyphListAA;
+		Java_sun_java2d_loops_DrawGlyphListLCD_DrawGlyphListLCD;
+		Java_sun_java2d_loops_DrawGlyphList_DrawGlyphList;
+                Java_sun_font_NativeStrikeDisposer_freeNativeScalerContext;
+                Java_sun_font_NativeStrike_createNullScalerContext;
+                Java_sun_font_NativeStrike_createScalerContext;
+                Java_sun_font_NativeStrike_getMaxGlyph;
+                Java_sun_font_NativeFont_fontExists;
+                Java_sun_font_NativeFont_haveBitmapFonts;
+                Java_sun_font_NativeFont_countGlyphs;
+                Java_sun_font_NativeFont_getGlyphAdvance;
+                Java_sun_font_NativeFont_getGlyphImage;
+                Java_sun_font_NativeFont_getGlyphImageNoDefault;
+                Java_sun_font_NativeFont_getFontMetrics;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,80 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+# In addition to regular symbols also include Freetype scaler
+
+SUNWprivate_1.1 {
+	global:
+                getSunFontIDs;
+                newLayoutTableCache; 
+                freeLayoutTableCache;
+                isNullScalerContext;
+                Java_sun_font_NullFontScaler_getNullScalerContext;
+                Java_sun_font_NullFontScaler_getGlyphImage;
+                Java_sun_font_SunFontManager_initIDs;
+                Java_sun_font_StrikeCache_getGlyphCacheDescription;
+                Java_sun_font_StrikeCache_freeIntPointer;
+                Java_sun_font_StrikeCache_freeLongPointer;
+                Java_sun_font_StrikeCache_freeIntMemory;
+                Java_sun_font_StrikeCache_freeLongMemory;
+                Java_sun_font_SunLayoutEngine_initGVIDs;
+                Java_sun_font_SunLayoutEngine_nativeLayout;
+                Java_sun_font_X11TextRenderer_doDrawGlyphList;
+		Java_sun_java2d_loops_DrawGlyphListAA_DrawGlyphListAA;
+		Java_sun_java2d_loops_DrawGlyphListLCD_DrawGlyphListLCD;
+		Java_sun_java2d_loops_DrawGlyphList_DrawGlyphList;
+                Java_sun_font_NativeStrikeDisposer_freeNativeScalerContext;
+                Java_sun_font_NativeStrike_createNullScalerContext;
+                Java_sun_font_NativeStrike_createScalerContext;
+                Java_sun_font_NativeStrike_getMaxGlyph;
+                Java_sun_font_NativeFont_fontExists;
+                Java_sun_font_NativeFont_haveBitmapFonts;
+                Java_sun_font_NativeFont_countGlyphs;
+                Java_sun_font_NativeFont_getGlyphAdvance;
+                Java_sun_font_NativeFont_getGlyphImage;
+                Java_sun_font_NativeFont_getGlyphImageNoDefault;
+                Java_sun_font_NativeFont_getFontMetrics;
+                Java_sun_font_FreetypeFontScaler_initIDs;
+                Java_sun_font_FreetypeFontScaler_createScalerContextNative;
+                Java_sun_font_FreetypeFontScaler_disposeNativeScaler;
+                Java_sun_font_FreetypeFontScaler_getFontMetricsNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphAdvanceNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphCodeNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphImageNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphMetricsNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphOutlineBoundsNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphOutlineNative;
+                Java_sun_font_FreetypeFontScaler_getGlyphVectorOutlineNative;
+                Java_sun_font_FreetypeFontScaler_getLayoutTableCacheNative;
+                Java_sun_font_FreetypeFontScaler_getMissingGlyphCodeNative;
+                Java_sun_font_FreetypeFontScaler_getNumGlyphsNative;
+                Java_sun_font_FreetypeFontScaler_getUnitsPerEMNative;
+                Java_sun_font_FreetypeFontScaler_initNativeScaler;
+                Java_sun_font_FreetypeFontScaler_getGlyphPointNative;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjaas/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+            Java_com_sun_security_auth_module_SolarisSystem_getSolarisInfo;
+            Java_com_sun_security_auth_module_UnixSystem_getUnixInfo;
+        local:
+	    *;
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjawt/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,33 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+	    JAWT_GetAWT;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjdwp/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Agent_OnLoad;
+	    Agent_OnUnload;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjpeg/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,55 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+		Java_sun_awt_image_JPEGImageDecoder_initIDs;
+		Java_sun_awt_image_JPEGImageDecoder_readImage;
+
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_initReaderIDs;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_initJPEGImageReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_setSource;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_readImageHeader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_setOutColorSpace;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_readImage;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_abortRead;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_resetReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_disposeReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_resetLibraryState;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initWriterIDs;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initJPEGImageWriter;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_setDest;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeTables;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeImage;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_abortWrite;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_resetWriter;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_disposeWriter;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjpeg/mapfile-vers-closed	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+#
+# Copyright (c) 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+		Java_sun_awt_image_JPEGImageDecoder_initIDs;
+		Java_sun_awt_image_JPEGImageDecoder_readImage;
+		Java_sun_awt_image_codec_JPEGImageDecoderImpl_initDecoder;
+		Java_sun_awt_image_codec_JPEGImageDecoderImpl_readJPEGStream;
+		Java_sun_awt_image_codec_JPEGImageEncoderImpl_initEncoder;
+		Java_sun_awt_image_codec_JPEGImageEncoderImpl_writeJPEGStream;
+
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_initReaderIDs;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_initJPEGImageReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_setSource;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_readImageHeader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_setOutColorSpace;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_readImage;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_abortRead;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_resetReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_disposeReader;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageReader_resetLibraryState;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initWriterIDs;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initJPEGImageWriter;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_setDest;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeTables;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeImage;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_abortWrite;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_resetWriter;
+                Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_disposeWriter;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjpeg/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,119 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%JNI_OnLoad;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_initIDs;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_readImage;
+text: .text%jStdError;
+text: .text%jCreaDecompress;
+text: .text%jIMemMgr;
+text: .text%jMemInit;
+text: .text%jGetSmall;
+text: .text%jIMReader;
+text: .text%alloc_small: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%reset_marker_reader: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jIInCtlr;
+# text: .text%GET_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jpegdecoder.o;
+text: .text%jReadHeader;
+text: .text%jConsumeInput;
+text: .text%reset_input_controller: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%reset_error_mgr: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jerror.o;
+text: .text%sun_jpeg_init_source;
+text: .text%consume_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%read_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%first_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%sun_jpeg_fill_input_buffer;
+# text: .text%RELEASE_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jpegdecoder.o;
+# text: .text%get_soi: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%emit_message: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jerror.o;
+# text: .text%next_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_interesting_appn: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%examine_app0: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%skip_variable: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%sun_jpeg_skip_input_data;
+# text: .text%examine_app14: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_dqt: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jAlcQTable;
+text: .text%get_sof: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%get_dri: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_dht: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jAlcHTable;
+text: .text%get_sos: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%initial_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%jDivRound;
+# text: .text%default_decompress_parms: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdapimin.o;
+text: .text%jHasMultScn;
+text: .text%jStrtDecompress;
+text: .text%jIDMaster;
+# text: .text%master_selection: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%jCalcDimensions;
+# text: .text%use_merged_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+# text: .text%prepare_range_limit_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%jIDColor;
+# text: .text%build_ycc_rgb_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+text: .text%jIUpsampler;
+text: .text%jRound;
+text: .text%alloc_sarray: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%alloc_large: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jGetLarge;
+text: .text%jIDPostC;
+text: .text%jIIDCT;
+text: .text%jIHDecoder;
+text: .text%jIDCoefC;
+text: .text%jIDMainC;
+# text: .text%alloc_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%realize_virt_arrays: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+# text: .text%per_scan_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+# text: .text%latch_quant_tables: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%start_pass_huff_decoder: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%jMkDDerived;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+# text: .text%start_iMCU_row: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+# text: .text%output_pass_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdapistd.o;
+text: .text%prepare_for_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%start_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jddctmgr.o;
+text: .text%start_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+text: .text%start_pass_dcolor: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+text: .text%start_pass_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%start_pass_dpost: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdpostct.o;
+text: .text%start_pass_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+# text: .text%make_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%jReadScanlines;
+text: .text%process_data_context_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%decompress_onepass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+text: .text%jZeroFar;
+text: .text%decode_mcu: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%jFilBitBuf;
+text: .text%jHufDecode;
+text: .text%jRDislow;
+text: .text%sep_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%fullsize_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%h2v2_fancy_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%ycc_rgb_convert: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+# text: .text%set_wraparound_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+# text: .text%process_restart: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%read_restart_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%finish_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+# text: .text%set_bottom_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%jFinDecompress;
+text: .text%finish_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%sun_jpeg_term_source;
+text: .text%jAbort;
+text: .text%free_pool: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jFreeLarge;
+text: .text%jFreeSmall;
+text: .text%jDestDecompress;
+text: .text%jDestroy;
+text: .text%self_destruct: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jMemTerm;
+text: .text%process_data_simple_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjpeg/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,119 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%JNI_OnLoad;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_initIDs;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_readImage;
+text: .text%jStdError;
+text: .text%jCreaDecompress;
+text: .text%jIMemMgr;
+text: .text%jMemInit;
+text: .text%jGetSmall;
+text: .text%jIMReader;
+text: .text%alloc_small: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%reset_marker_reader: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jIInCtlr;
+text: .text%GET_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jpegdecoder.o;
+text: .text%jReadHeader;
+text: .text%jConsumeInput;
+text: .text%reset_input_controller: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%reset_error_mgr: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jerror.o;
+text: .text%sun_jpeg_init_source;
+text: .text%consume_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%read_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%first_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%sun_jpeg_fill_input_buffer;
+text: .text%RELEASE_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jpegdecoder.o;
+# text: .text%get_soi: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%emit_message: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jerror.o;
+text: .text%next_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_interesting_appn: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%examine_app0: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%skip_variable: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%sun_jpeg_skip_input_data;
+text: .text%examine_app14: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_dqt: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jAlcQTable;
+text: .text%get_sof: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+# text: .text%get_dri: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%get_dht: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%jAlcHTable;
+text: .text%get_sos: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%initial_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%jDivRound;
+text: .text%default_decompress_parms: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdapimin.o;
+text: .text%jHasMultScn;
+text: .text%jStrtDecompress;
+text: .text%jIDMaster;
+text: .text%master_selection: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%jCalcDimensions;
+# text: .text%use_merged_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+# text: .text%prepare_range_limit_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%jIDColor;
+# text: .text%build_ycc_rgb_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+text: .text%jIUpsampler;
+text: .text%jRound;
+text: .text%alloc_sarray: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%alloc_large: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jGetLarge;
+text: .text%jIDPostC;
+text: .text%jIIDCT;
+text: .text%jIHDecoder;
+text: .text%jIDCoefC;
+text: .text%jIDMainC;
+text: .text%alloc_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%realize_virt_arrays: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%per_scan_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%latch_quant_tables: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+text: .text%start_pass_huff_decoder: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%jMkDDerived;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+# text: .text%start_iMCU_row: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+text: .text%output_pass_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdapistd.o;
+text: .text%prepare_for_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%start_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jddctmgr.o;
+text: .text%start_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+text: .text%start_pass_dcolor: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+text: .text%start_pass_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%start_pass_dpost: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdpostct.o;
+text: .text%start_pass_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%make_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%jReadScanlines;
+text: .text%process_data_context_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%decompress_onepass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcoefct.o;
+text: .text%jZeroFar;
+text: .text%decode_mcu: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%jFilBitBuf;
+text: .text%jHufDecode;
+text: .text%jRDislow;
+text: .text%sep_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%fullsize_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%h2v2_fancy_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdsample.o;
+text: .text%ycc_rgb_convert: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdcolor.o;
+# text: .text%set_wraparound_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+#text: .text%process_restart: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdhuff.o;
+text: .text%read_restart_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmarker.o;
+text: .text%finish_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdinput.o;
+# text: .text%set_bottom_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
+text: .text%jFinDecompress;
+text: .text%finish_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmaster.o;
+text: .text%sun_jpeg_term_source;
+text: .text%jAbort;
+text: .text%free_pool: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jFreeLarge;
+text: .text%jFreeSmall;
+text: .text%jDestDecompress;
+text: .text%jDestroy;
+text: .text%self_destruct: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jmemmgr.o;
+text: .text%jMemTerm;
+text: .text%process_data_simple_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj/jdmainct.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjpeg/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,119 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%JNI_OnLoad;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_initIDs;
+text: .text%Java_sun_awt_image_JPEGImageDecoder_readImage;
+text: .text%jStdError;
+text: .text%jCreaDecompress;
+text: .text%jIMemMgr;
+text: .text%jMemInit;
+text: .text%jGetSmall;
+text: .text%jIMReader;
+text: .text%alloc_small: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%reset_marker_reader: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%jIInCtlr;
+text: .text%GET_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jpegdecoder.o;
+text: .text%jReadHeader;
+text: .text%jConsumeInput;
+text: .text%reset_input_controller: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%reset_error_mgr: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jerror.o;
+text: .text%sun_jpeg_init_source;
+text: .text%consume_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%read_markers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+# text: .text%first_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%sun_jpeg_fill_input_buffer;
+text: .text%RELEASE_ARRAYS: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jpegdecoder.o;
+# text: .text%get_soi: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%emit_message: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jerror.o;
+text: .text%next_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%get_interesting_appn: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%examine_app0: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%skip_variable: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%sun_jpeg_skip_input_data;
+text: .text%examine_app14: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%get_dqt: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%jAlcQTable;
+text: .text%get_sof: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+# text: .text%get_dri: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%get_dht: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%jAlcHTable;
+text: .text%get_sos: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%initial_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%jDivRound;
+text: .text%default_decompress_parms: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdapimin.o;
+text: .text%jHasMultScn;
+text: .text%jStrtDecompress;
+text: .text%jIDMaster;
+text: .text%master_selection: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmaster.o;
+text: .text%jCalcDimensions;
+# text: .text%use_merged_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmaster.o;
+# text: .text%prepare_range_limit_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmaster.o;
+text: .text%jIDColor;
+# text: .text%build_ycc_rgb_table: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcolor.o;
+text: .text%jIUpsampler;
+text: .text%jRound;
+text: .text%alloc_sarray: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%alloc_large: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%jGetLarge;
+text: .text%jIDPostC;
+text: .text%jIIDCT;
+text: .text%jIHDecoder;
+text: .text%jIDCoefC;
+text: .text%jIDMainC;
+text: .text%alloc_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%realize_virt_arrays: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%per_scan_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%latch_quant_tables: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+text: .text%start_pass_huff_decoder: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdhuff.o;
+text: .text%jMkDDerived;
+text: .text%start_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcoefct.o;
+# text: .text%start_iMCU_row: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcoefct.o;
+text: .text%output_pass_setup: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdapistd.o;
+text: .text%prepare_for_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmaster.o;
+text: .text%start_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jddctmgr.o;
+text: .text%start_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcoefct.o;
+text: .text%start_pass_dcolor: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcolor.o;
+text: .text%start_pass_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdsample.o;
+text: .text%start_pass_dpost: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdpostct.o;
+text: .text%start_pass_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%make_funny_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%jReadScanlines;
+text: .text%process_data_context_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%decompress_onepass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcoefct.o;
+text: .text%jZeroFar;
+text: .text%decode_mcu: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdhuff.o;
+text: .text%jFilBitBuf;
+text: .text%jHufDecode;
+text: .text%jRDislow;
+text: .text%sep_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdsample.o;
+text: .text%fullsize_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdsample.o;
+text: .text%h2v2_fancy_upsample: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdsample.o;
+text: .text%ycc_rgb_convert: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdcolor.o;
+# text: .text%set_wraparound_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%process_restart: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdhuff.o;
+text: .text%read_restart_marker: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmarker.o;
+text: .text%finish_input_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdinput.o;
+# text: .text%set_bottom_pointers: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
+text: .text%jFinDecompress;
+text: .text%finish_output_pass: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmaster.o;
+text: .text%sun_jpeg_term_source;
+text: .text%jAbort;
+text: .text%free_pool: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%jFreeLarge;
+text: .text%jFreeSmall;
+text: .text%jDestDecompress;
+text: .text%jDestroy;
+text: .text%self_destruct: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jmemmgr.o;
+text: .text%jMemTerm;
+text: .text%process_data_simple_main: OUTPUTDIR/tmp/sun/sun.awt/jpeg/obj64/jdmainct.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libjsdt/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,37 @@
+#
+# Copyright (c) 2008, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+    global:
+        Java_sun_tracing_dtrace_JVM_isSupported0;
+        Java_sun_tracing_dtrace_JVM_activate0;
+        Java_sun_tracing_dtrace_JVM_dispose0;
+        Java_sun_tracing_dtrace_JVM_isEnabled0;
+        Java_sun_tracing_dtrace_JVM_defineClass0;
+    local:
+        *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/liblcms/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+#
+# Copyright (c) 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+        Java_sun_java2d_cmm_lcms_LCMS_loadProfile;
+        Java_sun_java2d_cmm_lcms_LCMS_freeProfile;
+        Java_sun_java2d_cmm_lcms_LCMS_getProfileSize;
+        Java_sun_java2d_cmm_lcms_LCMS_getProfileData;
+        Java_sun_java2d_cmm_lcms_LCMS_getTagSize;
+        Java_sun_java2d_cmm_lcms_LCMS_getTagData;
+        Java_sun_java2d_cmm_lcms_LCMS_setTagData;
+        Java_sun_java2d_cmm_lcms_LCMS_colorConvert;
+        Java_sun_java2d_cmm_lcms_LCMS_getProfileID;
+        Java_sun_java2d_cmm_lcms_LCMS_initLCMS;
+        Java_sun_java2d_cmm_lcms_LCMS_createNativeTransform;
+        JNI_OnLoad;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libsctp/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,55 @@
+#
+# Copyright (c) 2009, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+SUNWprivate_1.1 {
+	global:
+		Java_sun_nio_ch_sctp_SctpNet_init;
+		Java_sun_nio_ch_sctp_SctpNet_socket0;
+		Java_sun_nio_ch_sctp_SctpNet_bindx;
+		Java_sun_nio_ch_sctp_SctpNet_branch0;
+		Java_sun_nio_ch_sctp_SctpNet_listen0;
+		Java_sun_nio_ch_sctp_SctpNet_connect0;
+		Java_sun_nio_ch_sctp_SctpNet_close0;
+		Java_sun_nio_ch_sctp_SctpNet_preClose0;
+		Java_sun_nio_ch_sctp_SctpNet_getLocalAddresses0;
+		Java_sun_nio_ch_sctp_SctpNet_getRemoteAddresses0;
+		Java_sun_nio_ch_sctp_SctpNet_getPrimAddrOption0;
+		Java_sun_nio_ch_sctp_SctpNet_setPrimAddrOption0;
+		Java_sun_nio_ch_sctp_SctpNet_setPeerPrimAddrOption0;
+		Java_sun_nio_ch_sctp_SctpNet_getInitMsgOption0;
+		Java_sun_nio_ch_sctp_SctpNet_setInitMsgOption0;
+		Java_sun_nio_ch_sctp_SctpNet_getIntOption0;
+		Java_sun_nio_ch_sctp_SctpNet_setIntOption0;
+		Java_sun_nio_ch_sctp_SctpNet_shutdown0;
+		Java_sun_nio_ch_sctp_SctpChannelImpl_initIDs;
+		Java_sun_nio_ch_sctp_SctpChannelImpl_checkConnect;
+		Java_sun_nio_ch_sctp_SctpChannelImpl_receive0;
+		Java_sun_nio_ch_sctp_SctpChannelImpl_send0;
+		Java_sun_nio_ch_sctp_SctpServerChannelImpl_initIDs;
+		Java_sun_nio_ch_sctp_SctpServerChannelImpl_accept0;
+                JNI_OnLoad;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libt2k/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,49 @@
+#
+# Copyright (c) 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+             Java_sun_font_T2KFontScaler_createScalerContextNative;
+             Java_sun_font_T2KFontScaler_disposeNativeScaler;
+             Java_sun_font_T2KFontScaler_getFontMetricsNative;
+             Java_sun_font_T2KFontScaler_getGlyphAdvanceNative;
+             Java_sun_font_T2KFontScaler_getGlyphCodeNative;
+             Java_sun_font_T2KFontScaler_getGlyphImageNative;
+             Java_sun_font_T2KFontScaler_getGlyphMetricsNative;
+             Java_sun_font_T2KFontScaler_getGlyphOutlineBoundsNative;
+             Java_sun_font_T2KFontScaler_getGlyphOutlineNative;
+             Java_sun_font_T2KFontScaler_getGlyphVectorOutlineNative;
+             Java_sun_font_T2KFontScaler_getLayoutTableCacheNative;
+             Java_sun_font_T2KFontScaler_getMissingGlyphCodeNative;
+             Java_sun_font_T2KFontScaler_getNumGlyphsNative;
+             Java_sun_font_T2KFontScaler_getUnitsPerEMNative;
+             Java_sun_font_T2KFontScaler_initIDs;
+             Java_sun_font_T2KFontScaler_initNativeScaler;
+             Java_sun_font_T2KFontScaler_getGlyphPointNative;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libunpack/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,40 @@
+
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_finish;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_getNextFile;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_getOption;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_getUnusedInput;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_initIDs;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_setOption;
+	    Java_com_sun_java_util_jar_pack_NativeUnpack_start;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libunpack/mapfile-vers-unpack200	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,31 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libverify/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2000, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+ 
+SUNWprivate_1.1 {
+   global:
+           VerifyClass;
+           VerifyClassForMajorVersion;
+           VerifyClassname;
+           VerifyFixClassname;
+   local:
+           *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libverify/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,40 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%skip_over_field_signature: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%VerifyClass;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%class_name_to_ID: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%free_block: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Exit
+# Test Hello
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%isAssignableTo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Sleep
+text: .text%isLegalTarget: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%copy_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%ntohl: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libverify/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj/check_format.o;
+text: .text%VerifyClass;
+text: .text%CCinit: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_class_hash;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%instruction_length: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_exception_table: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%pop_and_free: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_stack: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%finalize_class_hash: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%CCdestroy: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Exit
+# Test Hello
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%verify_field: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%check_and_push: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
+text: .text%signature_to_args_size: OUTPUTDIR/tmp/java/verify/obj/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libverify/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%VerifyFixClassname;
+text: .text%next_utf2unicode: OUTPUTDIR/tmp/java/verify/obj64/check_format.o;
+text: .text%VerifyClassname;
+text: .text%skip_over_fieldname: OUTPUTDIR/tmp/java/verify/obj64/check_format.o;
+text: .text%VerifyClass;
+text: .text%CCinit: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_class_hash;
+text: .text%make_class_info_from_name: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%make_class_info: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_method: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%instruction_length: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_opcode_operands: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%verify_constant_pool_type: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%cp_index_to_class_fullinfo: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%check_and_push: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%pop_and_free: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%set_protected: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_exception_table: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_fullinfo_types: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%initialize_dataflow: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%signature_to_fieldtype: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%check_register_values: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%pop_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%update_registers: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%push_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_into_successors: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_into_one_successor: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_stack: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%merge_registers: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%finalize_class_hash: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%CCdestroy: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+# Test Exit
+# Test Hello
+# Test Sleep
+# Test IntToString
+# Test LoadToolkit
+# Test LoadFrame
+# Test LoadJFrame
+# Test JHello
+# SwingSet
+text: .text%verify_field: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
+text: .text%signature_to_args_size: OUTPUTDIR/tmp/java/verify/obj64/check_code.o;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libzip/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,86 @@
+#
+# Copyright (c) 1997, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		Java_java_util_jar_JarFile_getMetaInfEntryNames;
+		Java_java_util_zip_Adler32_update;
+		Java_java_util_zip_Adler32_updateBytes;
+		Java_java_util_zip_Adler32_updateByteBuffer;
+		Java_java_util_zip_CRC32_update;
+		Java_java_util_zip_CRC32_updateBytes;
+		Java_java_util_zip_CRC32_updateByteBuffer;
+		Java_java_util_zip_Deflater_deflateBytes;
+		Java_java_util_zip_Deflater_end;
+		Java_java_util_zip_Deflater_getAdler;
+		Java_java_util_zip_Deflater_getBytesRead;
+		Java_java_util_zip_Deflater_getBytesWritten;
+		Java_java_util_zip_Deflater_init;
+		Java_java_util_zip_Deflater_initIDs;
+		Java_java_util_zip_Deflater_reset;
+		Java_java_util_zip_Deflater_setDictionary;
+		Java_java_util_zip_Inflater_end;
+		Java_java_util_zip_Inflater_getAdler;
+		Java_java_util_zip_Inflater_getBytesRead;
+		Java_java_util_zip_Inflater_getBytesWritten;
+		Java_java_util_zip_Inflater_inflateBytes;
+		Java_java_util_zip_Inflater_init;
+		Java_java_util_zip_Inflater_initIDs;
+		Java_java_util_zip_Inflater_reset;
+		Java_java_util_zip_Inflater_setDictionary;
+		Java_java_util_zip_ZipFile_close;
+		Java_java_util_zip_ZipFile_getCommentBytes;
+		Java_java_util_zip_ZipFile_freeEntry;
+		Java_java_util_zip_ZipFile_getEntry;
+		Java_java_util_zip_ZipFile_getEntryBytes;
+		Java_java_util_zip_ZipFile_getEntryCrc;
+		Java_java_util_zip_ZipFile_getEntryCSize;
+		Java_java_util_zip_ZipFile_getEntryFlag;
+		Java_java_util_zip_ZipFile_getEntryMethod;
+		Java_java_util_zip_ZipFile_getEntrySize;
+		Java_java_util_zip_ZipFile_getEntryTime;
+		Java_java_util_zip_ZipFile_getNextEntry;
+		Java_java_util_zip_ZipFile_getZipMessage;
+		Java_java_util_zip_ZipFile_getTotal;
+		Java_java_util_zip_ZipFile_initIDs;
+		Java_java_util_zip_ZipFile_open;
+		Java_java_util_zip_ZipFile_read;
+
+		ZIP_Close;
+		ZIP_CRC32;
+		ZIP_FindEntry;
+		ZIP_GetEntry;
+		ZIP_GetNextEntry;
+		ZIP_Lock;
+		ZIP_Open;
+		ZIP_Read;
+		ZIP_ReadEntry;
+		ZIP_Unlock;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libzip/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,49 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%ZIP_Open;
+text: .text%ZIP_Open_Generic;
+text: .text%InitializeZip;
+text: .text%allocZip;
+text: .text%readCEN: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%findEND: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%hash: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%isMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%addMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%ZIP_FindEntry;
+text: .text%ZIP_GetEntry;
+text: .text%ZIP_Lock;
+text: .text%readLOC: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%ZIP_Unlock;
+text: .text%ZIP_FreeEntry;
+text: .text%Java_java_util_zip_ZipFile_initIDs;
+text: .text%Java_java_util_zip_ZipFile_open;
+text: .text%Java_java_util_zip_ZipFile_getTotal;
+text: .text%Java_java_util_zip_ZipFile_getEntry;
+text: .text%Java_java_util_zip_ZipFile_freeEntry;
+text: .text%Java_java_util_zip_ZipFile_getEntryTime;
+text: .text%Java_java_util_zip_ZipFile_getEntryCrc;
+text: .text%Java_java_util_zip_ZipFile_getEntryCSize;
+text: .text%Java_java_util_zip_ZipFile_getEntrySize;
+text: .text%Java_java_util_zip_ZipFile_getEntryFlag;
+text: .text%Java_java_util_zip_ZipFile_getEntryMethod;
+text: .text%Java_java_util_zip_ZipFile_getEntryBytes;
+text: .text%Java_java_util_zip_Inflater_initIDs;
+text: .text%Java_java_util_zip_Inflater_init;
+text: .text%inflateInit2_;
+text: .text%zcalloc;
+text: .text%inflateReset;
+text: .text%Java_java_util_zip_Inflater_inflateBytes;
+text: .text%inflate;
+text: .text%Java_java_util_zip_ZipFile_read;
+text: .text%ZIP_Read;
+text: .text%huft_build: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/inftrees.o;
+text: .text%zcfree;
+text: .text%Java_java_util_jar_JarFile_getMetaInfEntryNames;
+text: .text%ZIP_ReadEntry;
+text: .text%InflateFully;
+text: .text%inflateEnd;
+text: .text%Java_java_util_zip_Inflater_reset;
+text: .text%Java_java_util_zip_ZipFile_close;
+text: .text%ZIP_Close;
+text: .text%Java_java_util_zip_Inflater_end;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libzip/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,43 @@
+data = R0x2000;
+text = LOAD ?RXO;
+# Test Null
+text: .text%ZIP_Open;
+text: .text%ZIP_Open_Generic;
+text: .text%InitializeZip;
+text: .text%allocZip;
+text: .text%readCEN: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%findEND: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%hash: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%isMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%addMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj/zip_util.o;
+text: .text%ZIP_FindEntry;
+text: .text%ZIP_GetEntry;
+text: .text%ZIP_Lock;
+text: .text%ZIP_Unlock;
+text: .text%ZIP_FreeEntry;
+text: .text%Java_java_util_zip_ZipFile_initIDs;
+text: .text%Java_java_util_zip_ZipFile_open;
+text: .text%Java_java_util_zip_ZipFile_getTotal;
+text: .text%Java_java_util_zip_ZipFile_getEntry;
+text: .text%Java_java_util_zip_ZipFile_freeEntry;
+text: .text%Java_java_util_zip_ZipFile_getEntryTime;
+text: .text%Java_java_util_zip_ZipFile_getEntryCrc;
+text: .text%Java_java_util_zip_ZipFile_getEntryCSize;
+text: .text%Java_java_util_zip_ZipFile_getEntrySize;
+text: .text%Java_java_util_zip_ZipFile_getEntryFlag;
+text: .text%Java_java_util_zip_ZipFile_getEntryMethod;
+text: .text%Java_java_util_zip_ZipFile_getEntryBytes;
+text: .text%Java_java_util_zip_Inflater_initIDs;
+text: .text%Java_java_util_zip_Inflater_init;
+text: .text%inflateInit2_;
+text: .text%zcalloc;
+text: .text%Java_java_util_zip_Inflater_inflateBytes;
+text: .text%Java_java_util_zip_ZipFile_read;
+text: .text%ZIP_Read;
+text: .text%zcfree;
+text: .text%Java_java_util_jar_JarFile_getMetaInfEntryNames;
+text: .text%Java_java_util_zip_Inflater_reset;
+text: .text%Java_java_util_zip_Inflater_end;
+text: .text%inflateEnd;
+text: .text%Java_java_util_zip_ZipFile_close;
+text: .text%ZIP_Close;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mapfiles/libzip/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,48 @@
+data = R0x2000;
+text = LOAD ?RXO;
+text: .text%ZIP_Open;
+text: .text%ZIP_Open_Generic;
+text: .text%InitializeZip;
+text: .text%allocZip;
+text: .text%readCEN: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%findEND: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%hash: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%isMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%addMetaName: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%ZIP_FindEntry;
+text: .text%ZIP_GetEntry;
+text: .text%ZIP_Lock;
+text: .text%readLOC: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/zip_util.o;
+text: .text%ZIP_Unlock;
+text: .text%ZIP_FreeEntry;
+text: .text%Java_java_util_zip_ZipFile_initIDs;
+text: .text%Java_java_util_zip_ZipFile_open;
+text: .text%Java_java_util_zip_ZipFile_getTotal;
+text: .text%Java_java_util_zip_ZipFile_getEntry;
+text: .text%Java_java_util_zip_ZipFile_freeEntry;
+text: .text%Java_java_util_zip_ZipFile_getEntryTime;
+text: .text%Java_java_util_zip_ZipFile_getEntryCrc;
+text: .text%Java_java_util_zip_ZipFile_getEntryCSize;
+text: .text%Java_java_util_zip_ZipFile_getEntrySize;
+text: .text%Java_java_util_zip_ZipFile_getEntryFlag;
+text: .text%Java_java_util_zip_ZipFile_getEntryMethod;
+text: .text%Java_java_util_zip_ZipFile_getEntryBytes;
+text: .text%Java_java_util_zip_Inflater_initIDs;
+text: .text%Java_java_util_zip_Inflater_init;
+text: .text%inflateInit2_;
+text: .text%zcalloc;
+text: .text%inflateReset;
+text: .text%Java_java_util_zip_Inflater_inflateBytes;
+text: .text%inflate;
+text: .text%Java_java_util_zip_ZipFile_read;
+text: .text%ZIP_Read;
+text: .text%huft_build: OUTPUTDIR/tmp/sun/java.util.zip/zip/obj64/inftrees.o;
+text: .text%zcfree;
+text: .text%Java_java_util_jar_JarFile_getMetaInfEntryNames;
+text: .text%ZIP_ReadEntry;
+text: .text%InflateFully;
+text: .text%inflateEnd;
+text: .text%Java_java_util_zip_Inflater_reset;
+text: .text%Java_java_util_zip_ZipFile_close;
+text: .text%ZIP_Close;
+text: .text%Java_java_util_zip_Inflater_end;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,68 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all the demos
+#
+
+BUILDDIR = ..
+PRODUCT = demos
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS            = jni
+SUBDIRS_desktop    = 
+SUBDIRS_management = 
+SUBDIRS_misc       = 
+SUBDIRS_tools      = jvmti
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+TOPLEVEL_FILES =							\
+	$(DEMODIR)/README
+
+all build:: nbproject
+	$(SUBDIRS-loop)
+
+all build:: $(TOPLEVEL_FILES)
+
+nbproject:
+	$(RM) -r $(DEMODIR)/nbproject
+	$(MKDIR) -p $(DEMODIR)
+	( $(CD) $(SHARE_SRC)/demo && $(TAR) -cf - \
+	  `$(FIND) nbproject $(SCM_DIRS_prune) -o -type f -print` ) | \
+	  ( $(CD) $(DEMODIR) && $(TAR) -xf - )
+ifndef OPENJDK
+	( $(CD) $(CLOSED_SHARE_SRC)/demo && $(TAR) -cf - \
+	  `$(FIND) nbproject $(SCM_DIRS_prune) -o -type f -print` ) | \
+	  ( $(CD) $(DEMODIR) && $(TAR) -xf - )
+endif
+
+$(DEMODIR)/%: $(DEMOSRCDIR)/%
+	$(install-file)
+
+clean clobber::
+	$(SUBDIRS-loop)
+	$(RM) -r $(DEMODIR)
+	$(RM) -r $(DEMOCLASSDIR)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jni/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright (c) 1999, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building the jni demo(s)
+#
+
+BUILDDIR = ../..
+PRODUCT = demos
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS =
+
+ifeq ($(PLATFORM),solaris)
+  SUBDIRS += Poller
+endif
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jni/Poller/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+#
+# Copyright (c) 1999, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Build Poller class demo.
+#
+
+BUILDDIR = ../../..
+PRODUCT = demo/jni
+DEMONAME = Poller
+include $(BUILDDIR)/common/Defs.gmk
+
+DEMO_ROOT       = $(PLATFORM_SRC)/demo/jni/$(DEMONAME)
+DEMO_TOPFILES   = ./README.txt
+DEMO_MAINCLASS  = Client
+DEMO_NATIVECLASS= $(DEMONAME)
+DEMO_DESTDIR    = $(DEMODIR)/jni/$(DEMONAME)
+
+#
+# Demo jar building rules.
+#
+include $(BUILDDIR)/common/Demo.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jvmti/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,51 @@
+#
+# Copyright (c) 2004, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building the jvmti demo(s)
+#
+
+BUILDDIR = ../..
+PRODUCT = demos
+include $(BUILDDIR)/common/Defs.gmk
+
+# Can be built in any order, the JRE version of hprof and java_crw_demo are
+#   really built in make/java.
+#   The hprof target here just delivers the sources and README files.
+#   The java_crw_demo and agent_util files are copied into each demo that
+#   uses them.
+SUBDIRS = \
+	  hprof
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
+all build :: $(DEMODIR)/jvmti/index.html
+
+$(DEMODIR)/jvmti/index.html: $(SHARE_SRC)/demo/jvmti/index.html
+	$(install-file)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jvmti/README.txt	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,58 @@
+#
+# Copyright (c) 2004, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+Instructions on adding a jvmti demo agent.
+
+Basically you want to mimic the jvmti demo agent "mtrace".
+
+* Create and populate a source directory at src/share/demo/jvmti
+  (Try and re-use code in agent_util area like src/share/demo/jvmti/mtrace)
+  (This should include a small README.txt document on what this demo is)
+
+* Make sure the appropriate "demo" copyright notice is added to all the
+  source files.
+
+* Edit src/share/demo/jvmti/index.html and add in reference to this demo.
+
+* Create make directory at make/mkdemo/jvmti
+  (Mimic make/mkdemo/jvmti/mtrace/Makefile)
+
+* Edit make/mkdemo/jvmti/Makefile and add in the new demo
+
+* Create test directory at test/demo/jvmti, create at least one test
+  (Use test/demo/jvmti/mtrace as a template)
+
+* Don't forget to check in all the new files
+
+* Build and create images (cd make && gnumake && gnumake images)
+  (Do this on Solaris, Linux, and at least one Windows platform)
+
+* Verify that browsing build/*/j2sdk-images/demo/jvmti looks right
+
+* Run the tests: cd test/demo/jvmti && runregress .
+  (Do this on Solaris, Linux, and at least one Windows platform)
+
+Contact: serviceability-dev@openjdk.java.net for more information or help.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jvmti/hprof/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,52 @@
+#
+# Copyright (c) 2004, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PRODUCT = demo/jvmti
+DEMONAME = hprof
+include $(BUILDDIR)/common/Defs.gmk
+
+DEMO_ROOT       = $(SHARE_SRC)/demo/jvmti/$(DEMONAME)
+DEMO_TOPFILES   = ./README.txt
+DEMO_PSRCDIR    = $(PLATFORM_SRC)/demo/jvmti/$(DEMONAME)
+DEMO_DESTDIR    = $(DEMODIR)/jvmti/$(DEMONAME)
+
+DEMO_OBJECTS    = java_crw_demo.$(OBJECT_SUFFIX)
+
+ifeq ($(PLATFORM), windows)
+  EXTRA_LIBS += wsock32.lib winmm.lib
+endif
+ifeq ($(PLATFORM), solaris)
+  OTHER_LDLIBS += $(LIBSOCKET) $(LIBNSL) -ldl
+endif
+ifeq ($(PLATFORM), linux)
+  OTHER_LDLIBS += $(LIBSOCKET) $(LIBNSL) -ldl -lpthread
+endif
+
+#
+# Demo jar building rules.
+#
+include $(BUILDDIR)/common/Demo.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/jvmti/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface for a Java JVMTI agent library (Solaris & Linux).
+
+SUNWprivate_1.1 {
+	global:
+	    Agent_OnLoad;
+	    Agent_OnUnload;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/mkdemo/management/README.txt	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,57 @@
+#
+# Copyright (c) 2004, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+Instructions on adding a java.lang.management demo.
+
+Basically you want to mimic the java.lang.management demo "FullThreadDump".
+
+* Create and populate a source directory at src/demo/management
+  (This should include a small README.txt document on what this demo is)
+
+* Make sure the appropriate "demo" copyright notice is added to all the
+  source files.
+
+* Edit src/share/demo/management/index.html and add in reference to this demo.
+
+* Create make directory at make/mkdemo/management
+  (Mimic make/mkdemo/management/FullThreadDump/Makefile)
+
+* Edit make/mkdemo/management/Makefile and add in the new demo
+
+* Create test directory at test/demo/management, create at least one test
+  (Use test/demo/management/FullThreadDump as a template)
+
+* Don't forget to put all files under SCM control
+
+* Build and create images (cd make && gnumake && gnumake images)
+  (Do this on Solaris, Linux, and at least one Windows platform)
+
+* Verify that browsing build/*/j2sdk-images/demo/management looks right
+
+* Run the tests: cd test/demo/management && runregress .
+  (Do this on Solaris, Linux, and at least one Windows platform)
+
+Contact: jk-svc-group@sun.com for more information or help.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,98 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of sun tools
+#
+
+BUILDDIR = ..
+PRODUCT  = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+# Rhino/Mozilla java sources
+ORG_EXISTS := $(call DirExists,$(CLOSED_SRC)/share/classes/sun/org,,)
+ifneq ("$(ORG_EXISTS)", "")
+  ORG_SUBDIR = org
+endif
+
+# Non windows subdirs
+ifneq ($(PLATFORM), windows)
+  ifndef OPENJDK
+    ifeq ($(PLATFORM), solaris)
+      ifneq ($(ARCH), amd64)
+        # Solaris 11 does not have support for new compilation of DGA code.
+        OS_VERSION = $(shell uname -r)
+        OS_MAJOR_VERSION := $(call MajorVersion,$(OS_VERSION))
+        OS_MINOR_VERSION := $(call MinorVersion,$(OS_VERSION))
+        ifeq ($(shell $(EXPR) $(OS_MAJOR_VERSION) == 5), 1)
+          ifeq ($(shell $(EXPR) $(OS_MINOR_VERSION) \<= 10), 1)
+            DGA_SUBDIR = jdga
+          endif
+        endif
+      endif
+    endif
+  endif
+  HEADLESS_SUBDIR = headless
+  XAWT_SUBDIR     = xawt
+endif
+
+ifeq ($(PLATFORM), macosx)
+  LWAWT_PRE_SUBDIR = osxapp
+  LWAWT_SUBDIR = lwawt
+endif
+
+ifndef OPENJDK
+ifneq ($(PLATFORM), macosx)
+  JDBC_SUBDIR = jdbc
+endif
+endif
+
+ifdef OPENJDK
+else
+  RENDER_SUBDIR = dcpr
+endif
+
+# nio need to be compiled before awt to have all charsets ready
+SUBDIRS            = security javazic nio
+
+ifdef BUILD_HEADLESS_ONLY
+  DISPLAY_LIBS = awt $(HEADLESS_SUBDIR)
+  DISPLAY_TOOLS = 
+else
+  DISPLAY_LIBS = awt splashscreen $(XAWT_SUBDIR) $(HEADLESS_SUBDIR)
+  DISPLAY_TOOLS = 
+endif
+SUBDIRS_desktop    = $(RENDER_SUBDIR) image \
+                     $(LWAWT_PRE_SUBDIR) $(DISPLAY_LIBS) $(DGA_SUBDIR) $(LWAWT_SUBDIR)\
+                     cmm $(DISPLAY_TOOLS)
+SUBDIRS_management = 
+SUBDIRS_misc       = $(ORG_SUBDIR) $(JDBC_SUBDIR)
+SUBDIRS_tools      = 
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/CondenseRules.awk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,21 @@
+BEGIN {
+    previous="";
+    prefix="";
+    ORS="";
+    OFS="";
+} 
+{
+    if ($1 != previous) { 
+	if (previous != "") {
+	    print "\n\n";
+	}
+	previous = $1;
+    	print $1;
+	prefix="\t";
+    }
+    print prefix $2;
+    prefix=" ";
+}
+END {
+    print "\n";
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/Depend.mak	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,163 @@
+#
+# This makefile must be executed on a system with makedepend, such as Solaris.
+# In my copious amount of spare time, I hope to write a Java-based makedepend
+# to eliminate this dependency (no pun intended). TB
+
+BUILD_DIR = ../..
+TOPDIR   = ../../..
+
+STUBDIR = WindowsSystemHeaderStubs
+BUILDSTUBDIR = BuildStubs
+
+SHARE_SRC = $(TOPDIR)/src/share
+SUN_SRC = $(SHARE_SRC)/native/sun
+COMP_SRC = $(SUN_SRC)/awt/alphacomposite
+DEBUG_SRC = $(SUN_SRC)/awt/debug
+IMG_SRC = $(SUN_SRC)/awt/image
+MEDIA_SRC = $(SUN_SRC)/awt/medialib
+J2D_SRC  = $(SUN_SRC)/java2d
+J2D_FONT_SRC = $(SUN_SRC)/font
+J2D_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/java2d
+AWT_WINDOWS_SRC = $(WINDOWS_SRC)/native/sun/awt
+LOOP_SRC = $(SUN_SRC)/java2d/loops
+PIPE_SRC = $(SUN_SRC)/java2d/pipe
+WINDOWS_SRC = $(TOPDIR)/src/windows
+SRC = $(WINDOWS_SRC)/native/sun/windows
+
+# ensure consistent sort order
+LC_ALL:= C
+
+SRCDIRS = \
+	$(COMP_SRC) \
+	$(DEBUG_SRC) \
+	$(IMG_SRC) \
+	$(IMG_SRC)/cvutils \
+	$(IMG_SRC)/gif \
+	$(MEDIA_SRC) \
+	$(J2D_SRC) \
+	$(J2D_FONT_SRC) \
+	$(J2D_SRC)/opengl \
+	$(J2D_WINDOWS_SRC)/windows \
+	$(J2D_WINDOWS_SRC)/d3d \
+	$(J2D_WINDOWS_SRC)/opengl \
+	$(LOOP_SRC) \
+	$(PIPE_SRC) \
+	$(SRC)
+
+INCLUDES = \
+	   -I$(STUBDIR) \
+	   -I$(BUILDSTUBDIR) \
+	   -I$(SHARE_SRC)/javavm/export \
+	   -I$(WINDOWS_SRC)/javavm/export \
+	   -I$(SHARE_SRC)/native/common \
+	   -I$(WINDOWS_SRC)/native/common \
+	   -I$(SUN_SRC)/dc/doe \
+	   -I$(SUN_SRC)/dc/path \
+	   -I$(COMP_SRC) \
+	   -I$(DEBUG_SRC) \
+	   -I$(IMG_SRC) \
+	   -I$(IMG_SRC)/cvutils \
+	   -I$(MEDIA_SRC) \
+	   -I$(J2D_SRC) \
+	   -I$(J2D_FONT_SRC) \
+	   -I$(J2D_SRC)/opengl \
+	   -I$(J2D_WINDOWS_SRC) \
+	   -I$(J2D_WINDOWS_SRC)/windows \
+	   -I$(J2D_WINDOWS_SRC)/d3d \
+	   -I$(J2D_WINDOWS_SRC)/opengl \
+	   -I$(AWT_WINDOWS_SRC) \
+	   -I$(LOOP_SRC) \
+	   -I$(PIPE_SRC) \
+	   -I$(SRC)
+
+STUBFILES = \
+	$(STUBDIR)/ddraw.h \
+	$(STUBDIR)/d3d.h \
+	$(STUBDIR)/d3d9.h \
+	$(STUBDIR)/Ole2.h \
+	$(STUBDIR)/Zmouse.h \
+	$(STUBDIR)/cderr.h \
+	$(STUBDIR)/comdef.h \
+	$(STUBDIR)/commctrl.h \
+	$(STUBDIR)/commdlg.h \
+	$(STUBDIR)/comutil.h \
+	$(STUBDIR)/direct.h \
+	$(STUBDIR)/d3dcom.h \
+	$(STUBDIR)/imm.h \
+	$(STUBDIR)/ime.h \
+	$(STUBDIR)/io.h \
+	$(STUBDIR)/map \
+	$(STUBDIR)/mmsystem.h \
+	$(STUBDIR)/new.h \
+	$(STUBDIR)/new \
+	$(STUBDIR)/ole2.h \
+	$(STUBDIR)/process.h \
+	$(STUBDIR)/richole.h \
+	$(STUBDIR)/richedit.h \
+	$(STUBDIR)/shellapi.h \
+	$(STUBDIR)/shlwapi.h \
+	$(STUBDIR)/shlobj.h \
+	$(STUBDIR)/tchar.h \
+	$(STUBDIR)/winbase.h \
+	$(STUBDIR)/windef.h \
+	$(STUBDIR)/windows.h \
+	$(STUBDIR)/Windows.h \
+	$(STUBDIR)/windowsx.h \
+	$(STUBDIR)/winspool.h \
+	$(STUBDIR)/winuser.h \
+	$(STUBDIR)/wtypes.h \
+	$(STUBDIR)/zmouse.h \
+
+EXTRAFILES_c = \
+	img_colors.c
+
+default: dependencies
+
+include FILES_c_windows.gmk
+
+dependencies:
+	rm -rf make.depend
+	rm -rf make.tmp make.tmp2 make.tmp.bak
+	rm -rf $(STUBDIR) $(BUILDSTUBDIR) depend.filelist
+	for file in $(FILES_c) $(FILES_cpp) $(EXTRAFILES_c); do \
+	    for dir in $(SRCDIRS); do \
+	    	if [ -f $$dir/$$file ]; then \
+		    echo $$dir/$$file >>depend.filelist; \
+		fi; \
+	    	if [ -f $$dir/$${file}pp ]; then \
+		    echo $$dir/$${file}pp >>depend.filelist; \
+		fi; \
+	    done; \
+	done
+	touch make.tmp
+	mkdir $(STUBDIR)
+	touch $(STUBFILES)
+	mkdir $(BUILDSTUBDIR)
+	gnumake -f Depend.mak classhdrstubs
+	touch $(BUILDSTUBDIR)/awt_colors.h
+	cat depend.filelist | xargs -n 100 makedepend \
+		-DWIN32 -D_X86X -Dx86 -DDEBUG -D_MSC_VER -DMLIB_NO_LIBSUNMATH \
+                -DUNICODE -D_UNICODE \
+		-a -f make.tmp -o.obj $(INCLUDES)
+	fgrep .obj make.tmp | sed -f Depend.sed | sort -f -u | nawk -f CondenseRules.awk > make.depend
+	rm -rf make.tmp make.tmp2 make.tmp.bak
+	rm -rf $(STUBDIR) $(BUILDSTUBDIR) depend.filelist
+
+
+include FILES_export_windows.gmk
+
+EXTRAFILES_java = \
+        sun/java2d/opengl/OGLContext/OGLContextCaps.java \
+        sun/java2d/d3d/D3DPaints/MultiGradient.java \
+        sun/java2d/d3d/D3DContext/D3DContextCaps.java \
+	java/lang/Integer.java
+
+FILES_java = $(FILES_export) $(FILES_export2) $(FILES_export3) \
+	$(EXTRAFILES_java)
+
+classhdrstubs:
+	for file in `echo $(FILES_java) | \
+		      tr ' ' '\n' | \
+		      sed -e 'y/\//_/' -e 's/\.java/.h/'`; do \
+	    echo "#include <jni.h>" > $(BUILDSTUBDIR)/$$file; \
+	done
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/Depend.sed	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,32 @@
+# Unqualify std headers
+# remove headers with no extension as well (e.g. C++ 94 STL headers) - robi
+# s/ \/usr\/include[^ ]*\.h//g
+s/ \/usr\/include[^ ]*//g
+
+# Unqualify std Windows headers 
+# remove headers with no extension as well (e.g. C++ 94 STL headers) - robi
+# s/ WindowsSystemHeaderStubs[^ ]*\.h//g
+s/ WindowsSystemHeaderStubs[^ ]*//g
+
+# ####################################
+# Rules to allow for generation of dependencies on an unbuilt tree...
+#
+# BuildStubs is populated with stubs for include files that are
+# generated by the build and then dependencies are adjusted here
+#
+# Adjust awt_colors.h
+# Change BuildStubs to .
+s/ BuildStubs\/awt_colors.h/ $(OBJDIR)\/awt_colors.h/g
+#
+# Adjust CClassHeaders
+# Change BuildStubs to CClassHeaders
+s/ BuildStubs/ $(CLASSHDRDIR)/g
+#
+# End of unbuilt tree adjustments
+# ####################################
+
+# Remove any empty rules
+/:[ ]*$/d
+
+# Change .obj path from src to proper awt/obj or awt/obj_g directory
+s/^.*\/\(.*:\)/$(OBJDIR)\/\1:/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_c_macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,28 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_AWT_objc = \
+        $(TARGDIR)MacOSXResourceBundle.m
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_c_unix.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,173 @@
+#
+# Copyright (c) 1996, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# The debug_* files included here aren't for 2D specifically but they
+# have no X dependency.
+
+FILES_2D_vis = \
+	vis_FuncArray.c           \
+	java2d_Mlib.c             \
+	mlib_ImageCreate.c        \
+	mlib_ImageZoom_NN.c       \
+	mlib_ImageCopy_Bit.c      \
+	mlib_sys.c                \
+	mlib_v_ImageClear.c       \
+	mlib_v_ImageClear_f.c     \
+	mlib_v_ImageConstXor.c    \
+	mlib_v_ImageCopy.c        \
+	mlib_v_ImageCopy_f.c      \
+	mlib_v_ImageXor.c         \
+	mlib_v_ImageZoom_NN_f.c   \
+	vis_Interp.c              \
+	vis_AlphaMacros.c         \
+	vis_AlphaMaskBlit.c       \
+	vis_AlphaMaskFill.c       \
+	vis_ByteGray.c            \
+	vis_ByteGray_FromRgb.c    \
+	vis_ByteGray_Mask.c       \
+	vis_ByteIndexed.c         \
+	vis_DrawLine.c            \
+	vis_FourByteAbgr.c        \
+	vis_IntArgb.c             \
+	vis_IntArgbPre.c          \
+	vis_IntArgbPre_Mask.c     \
+	vis_IntBgr.c              \
+	vis_IntRgb.c              \
+	vis_IntRgbx.c             \
+	vis_SrcMaskFill.c         \
+	vis_SrcOverMaskBlit.c     \
+	vis_SrcOverMaskFill.c     \
+	vis_FourByteAbgrPre.c     \
+	vis_GlyphList.c           \
+	vis_GlyphListXor.c        \
+	vis_IntArgbBm.c           \
+	vis_ThreeByteBgr.c        \
+	vis_UshortGray.c          \
+	vis_UshortGray_FromRgb.c  \
+	vis_XorBlit.c
+
+FILES_2D_c = \
+	gifdecoder.c \
+	imageInitIDs.c \
+	img_colors.c \
+        img_globals.c \
+	SurfaceData.c \
+	Region.c \
+	BufImgSurfaceData.c \
+	Disposer.c \
+        Trace.c \
+	GraphicsPrimitiveMgr.c \
+	Blit.c \
+	BlitBg.c \
+	ScaledBlit.c \
+	FillRect.c \
+	FillSpans.c \
+	FillParallelogram.c \
+	DrawParallelogram.c \
+	DrawLine.c \
+	DrawRect.c \
+	DrawPolygons.c \
+        DrawPath.c \
+        FillPath.c \
+        ProcessPath.c \
+	MaskBlit.c \
+	MaskFill.c \
+	TransformHelper.c \
+        AlphaMath.c \
+	AlphaMacros.c \
+	AnyByte.c \
+        ByteBinary1Bit.c \
+        ByteBinary2Bit.c \
+        ByteBinary4Bit.c \
+	ByteIndexed.c \
+	ByteGray.c \
+	Index8Gray.c \
+	Index12Gray.c \
+	AnyShort.c \
+	Ushort555Rgb.c \
+	Ushort565Rgb.c \
+	Ushort4444Argb.c \
+	Ushort555Rgbx.c \
+	UshortGray.c \
+	UshortIndexed.c \
+	Any3Byte.c \
+	ThreeByteBgr.c \
+	AnyInt.c \
+	IntArgb.c \
+        IntArgbPre.c \
+        IntArgbBm.c \
+	IntRgb.c \
+	IntBgr.c \
+	IntRgbx.c \
+	Any4Byte.c \
+        FourByteAbgr.c \
+        FourByteAbgrPre.c \
+	BufferedMaskBlit.c \
+	BufferedRenderPipe.c \
+	ShapeSpanIterator.c \
+	SpanClipRenderer.c \
+	awt_ImageRep.c \
+        awt_ImagingLib.c \
+        awt_Mlib.c \
+        awt_parseImage.c \
+	DataBufferNative.c \
+	dither.c \
+	debug_assert.c \
+	debug_mem.c \
+	debug_trace.c \
+	debug_util.c
+
+# These files are required to be built, with or without motif.  Some of
+# these are only dependent on X11, and some contain native source that
+# is required, even in a headless build.
+
+FILES_NO_MOTIF_c = \
+	awt_Font.c \
+	HeadlessToolkit.c \
+	fontpath.c \
+	VDrawingArea.c \
+	X11Color.c \
+	X11Renderer.c \
+	X11PMBlitLoops.c \
+	X11SurfaceData.c \
+	X11FontScaler_md.c \
+	X11TextRenderer_md.c \
+        OGLBlitLoops.c \
+        OGLBufImgOps.c \
+        OGLContext.c \
+        OGLFuncs.c \
+        OGLMaskBlit.c \
+        OGLMaskFill.c \
+        OGLPaints.c \
+        OGLRenderQueue.c \
+        OGLRenderer.c \
+        OGLSurfaceData.c \
+        OGLTextRenderer.c \
+        OGLVertexCache.c \
+        GLXGraphicsConfig.c \
+        GLXSurfaceData.c \
+        AccelGlyphCache.c \
+	CUPSfuncs.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_c_windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,208 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	GraphicsPrimitiveMgr.c \
+	Blit.c \
+	BlitBg.c \
+	ScaledBlit.c \
+	FillRect.c \
+	FillSpans.c \
+	FillParallelogram.c \
+	DrawParallelogram.c \
+	DrawLine.c \
+	DrawRect.c \
+	DrawPolygons.c \
+        DrawPath.c \
+        FillPath.c \
+        ProcessPath.c \
+	MaskBlit.c \
+	MaskFill.c \
+	TransformHelper.c \
+        AlphaMath.c \
+	AlphaMacros.c \
+	AnyByte.c \
+        ByteBinary1Bit.c \
+        ByteBinary2Bit.c \
+        ByteBinary4Bit.c \
+	ByteIndexed.c \
+	ByteGray.c \
+	Index8Gray.c \
+	Index12Gray.c \
+	AnyShort.c \
+	Ushort555Rgb.c \
+	Ushort565Rgb.c \
+	Ushort4444Argb.c \
+	Ushort555Rgbx.c \
+	UshortGray.c \
+	UshortIndexed.c \
+	Any3Byte.c \
+	ThreeByteBgr.c \
+	AnyInt.c \
+	IntArgb.c \
+        IntArgbPre.c \
+        IntArgbBm.c \
+	IntRgb.c \
+	IntBgr.c \
+	IntRgbx.c \
+	Any4Byte.c \
+        FourByteAbgr.c \
+        FourByteAbgrPre.c \
+	BufferedMaskBlit.c \
+	BufferedRenderPipe.c \
+	ShapeSpanIterator.c \
+	SpanClipRenderer.c \
+	SurfaceData.c \
+	Region.c \
+	DataBufferNative.c \
+	BufImgSurfaceData.c \
+	Disposer.c \
+        Trace.c \
+	img_globals.c \
+	gifdecoder.c \
+	awt_parseImage.c \
+	awt_ImageRep.c \
+	awt_ImagingLib.c \
+	dither.c \
+	imageInitIDs.c \
+	debug_assert.c \
+	debug_mem.c \
+	debug_trace.c \
+	debug_util.c \
+        OGLBlitLoops.c \
+        OGLBufImgOps.c \
+        OGLContext.c \
+        OGLFuncs.c \
+        OGLMaskBlit.c \
+        OGLMaskFill.c \
+        OGLPaints.c \
+        OGLRenderQueue.c \
+        OGLRenderer.c \
+        OGLSurfaceData.c \
+        OGLTextRenderer.c \
+        OGLVertexCache.c \
+        WGLGraphicsConfig.c \
+        WGLSurfaceData.c \
+        AccelGlyphCache.c \
+        rect.c
+
+FILES_cpp = \
+	CmdIDList.cpp \
+	Hashtable.cpp \
+	GDIHashtable.cpp \
+	Devices.cpp \
+	ObjectList.cpp \
+	GDIBlitLoops.cpp \
+	GDIRenderer.cpp \
+	GDIWindowSurfaceData.cpp \
+	WindowsFlags.cpp \
+	WPrinterJob.cpp \
+	awt_AWTEvent.cpp \
+	awt_BitmapUtil.cpp \
+	awt_Brush.cpp \
+	awt_Button.cpp \
+	awt_Canvas.cpp \
+	awt_Checkbox.cpp \
+	awt_Choice.cpp \
+	awt_Clipboard.cpp \
+	awt_Color.cpp \
+	awt_Component.cpp \
+	awt_Container.cpp \
+	awt_Cursor.cpp \
+	awt_DataTransferer.cpp \
+	awt_Debug.cpp \
+	awt_Dimension.cpp \
+	awt_Desktop.cpp \
+	awt_DesktopProperties.cpp \
+	awt_Dialog.cpp \
+	awt_DrawingSurface.cpp \
+	awt_FileDialog.cpp \
+	awt_Event.cpp \
+	awt_Font.cpp \
+	awt_Frame.cpp \
+	awt_GDIObject.cpp \
+	awt_IconCursor.cpp \
+	awt_InputEvent.cpp \
+	awt_InputMethod.cpp \
+	awt_InputTextInfor.cpp \
+	awt_Insets.cpp \
+	awt_KeyEvent.cpp \
+	awt_KeyboardFocusManager.cpp \
+	awt_Label.cpp \
+	awt_List.cpp \
+	awt_Menu.cpp \
+	awt_MenuBar.cpp \
+	awt_MenuItem.cpp \
+	awt_MouseEvent.cpp \
+	awt_Object.cpp \
+	awt_Palette.cpp \
+	awt_Panel.cpp \
+	awt_PopupMenu.cpp \
+	awt_Pen.cpp \
+	awt_PrintControl.cpp \
+	awt_PrintDialog.cpp \
+	awt_PrintJob.cpp \
+	awt_Rectangle.cpp \
+	awt_Robot.cpp \
+	awt_Scrollbar.cpp \
+	awt_ScrollPane.cpp \
+	awt_TextArea.cpp \
+	awt_TextComponent.cpp \
+	awt_TextField.cpp \
+	awt_Toolkit.cpp \
+	awt_Window.cpp \
+	awt_Win32GraphicsEnv.cpp \
+	awt_Win32GraphicsDevice.cpp \
+	awt_Win32GraphicsConfig.cpp \
+	awt_DnDDT.cpp \
+	awt_DnDDS.cpp \
+	awt_Mlib.cpp \
+	awt_new.cpp \
+	awt_TrayIcon.cpp \
+	awt_DCHolder.cpp \
+	awt_ole.cpp \
+	ShaderList.cpp \
+	D3DBlitLoops.cpp \
+	D3DBufImgOps.cpp \
+	D3DContext.cpp \
+	D3DGlyphCache.cpp \
+	D3DGraphicsDevice.cpp \
+	D3DMaskBlit.cpp \
+	D3DMaskCache.cpp \
+	D3DMaskFill.cpp \
+	D3DPipelineManager.cpp \
+	D3DPaints.cpp \
+	D3DRenderer.cpp \
+	D3DRenderQueue.cpp \
+	D3DResourceManager.cpp \
+	D3DSurfaceData.cpp \
+	D3DTextRenderer.cpp \
+	D3DVertexCacher.cpp \
+	ShellFolder2.cpp \
+	ThemeReader.cpp \
+	ComCtl32Util.cpp \
+	DllUtil.cpp \
+	initIDs.cpp \
+	MouseInfo.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_export_macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,29 @@
+#
+# Copyright (c) 1995, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# FILES_export definitions for Mac OS X
+
+FILES_export += \
+	com/apple/resources/MacOSXResourceBundle.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_export_unix.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,189 @@
+#
+# Copyright (c) 2000, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# FILES_export definitions for Solaris and Linux
+
+FILES_export = \
+        sun/font/FontManager.java \
+	sun/awt/image/ImageRepresentation.java \
+	sun/awt/image/GifImageDecoder.java \
+	sun/awt/image/NativeLibLoader.java \
+	sun/java2d/loops/Blit.java \
+	sun/java2d/loops/BlitBg.java \
+	sun/java2d/loops/ScaledBlit.java \
+	sun/java2d/loops/TransformBlit.java \
+	sun/java2d/loops/FillRect.java \
+	sun/java2d/loops/FillSpans.java \
+	sun/java2d/loops/FillParallelogram.java \
+	sun/java2d/loops/DrawParallelogram.java \
+        sun/java2d/loops/DrawGlyphList.java \
+        sun/java2d/loops/DrawGlyphListAA.java \
+        sun/java2d/loops/DrawGlyphListLCD.java \
+	sun/java2d/loops/DrawLine.java \
+	sun/java2d/loops/DrawRect.java \
+	sun/java2d/loops/DrawPolygons.java \
+        sun/java2d/loops/DrawPath.java \
+        sun/java2d/loops/FillPath.java \
+	sun/java2d/loops/MaskBlit.java \
+	sun/java2d/loops/MaskFill.java \
+	sun/java2d/loops/TransformHelper.java \
+	sun/java2d/loops/GraphicsPrimitiveMgr.java \
+        sun/java2d/loops/GraphicsPrimitive.java \
+        sun/java2d/pipe/hw/AccelSurface.java \
+	sun/java2d/pipe/hw/AccelDeviceEventNotifier.java \
+        sun/java2d/pipe/hw/ContextCapabilities.java \
+        sun/awt/image/ImagingLib.java \
+	sun/java2d/SurfaceData.java \
+	sun/java2d/SunGraphics2D.java \
+	sun/awt/KeyboardFocusManagerPeerImpl.java \
+	sun/awt/image/BufImgSurfaceData.java \
+	sun/awt/image/DataBufferNative.java \
+	\
+	sun/awt/X11InputMethod.java \
+	sun/awt/motif/MFontConfiguration.java \
+        sun/awt/DebugSettings.java \
+	sun/awt/EmbeddedFrame.java \
+	sun/awt/PlatformFont.java \
+	sun/awt/FontDescriptor.java \
+	sun/awt/NativeLibLoader.java \
+	sun/awt/X11GraphicsEnvironment.java \
+	sun/awt/X11GraphicsDevice.java \
+	sun/awt/X11GraphicsConfig.java \
+	sun/awt/CharsetString.java \
+	sun/awt/UNIXToolkit.java \
+	sun/java2d/pipe/BufferedContext.java \
+	sun/java2d/pipe/BufferedMaskBlit.java \
+	sun/java2d/pipe/BufferedOpCodes.java \
+	sun/java2d/pipe/BufferedMaskBlit.java \
+	sun/java2d/pipe/BufferedPaints.java \
+	sun/java2d/pipe/BufferedRenderPipe.java \
+	sun/java2d/pipe/BufferedTextPipe.java \
+	sun/java2d/pipe/RenderBuffer.java \
+	sun/java2d/pipe/ShapeSpanIterator.java \
+	sun/java2d/pipe/SpanClipRenderer.java \
+	sun/java2d/pipe/RegionIterator.java \
+        sun/awt/image/IntegerComponentRaster.java \
+        sun/java2d/cmm/CMSManager.java \
+        sun/java2d/cmm/PCMM.java \
+        sun/java2d/cmm/ColorTransform.java \
+        sun/awt/datatransfer/DataTransferer.java \
+	sun/awt/dnd/SunDragSourceContextPeer.java \
+	sun/java2d/opengl/OGLBlitLoops.java \
+	sun/java2d/opengl/OGLContext.java \
+	sun/java2d/opengl/OGLMaskFill.java \
+	sun/java2d/opengl/OGLPaints.java \
+	sun/java2d/opengl/OGLRenderer.java \
+	sun/java2d/opengl/OGLRenderQueue.java \
+	sun/java2d/opengl/OGLSurfaceData.java \
+	sun/java2d/opengl/OGLTextRenderer.java \
+	sun/java2d/opengl/GLXGraphicsConfig.java \
+	sun/java2d/opengl/GLXSurfaceData.java \
+	sun/java2d/x11/X11PMBlitLoops.java \
+	sun/java2d/x11/X11PMBlitBgLoops.java \
+	sun/java2d/x11/X11Renderer.java \
+	sun/java2d/x11/X11SurfaceData.java \
+        com/sun/java/swing/plaf/gtk/GTKEngine.java \
+        com/sun/java/swing/plaf/gtk/GTKStyle.java \
+        sun/awt/ExtendedKeyCodes.java
+
+
+FILES_export2 = \
+	java/awt/AlphaComposite.java \
+	java/awt/MouseInfo.java \
+	java/awt/Cursor.java \
+	java/awt/Graphics.java \
+	java/awt/Color.java \
+	java/awt/Image.java \
+	java/awt/Rectangle.java \
+	java/awt/Event.java \
+	java/awt/Font.java \
+	java/awt/Insets.java \
+	java/awt/Point.java \
+	java/awt/FontMetrics.java \
+	java/awt/Toolkit.java \
+	java/awt/Component.java \
+	java/awt/Container.java \
+	java/awt/Canvas.java \
+	java/awt/Button.java \
+	java/awt/List.java \
+	java/awt/Adjustable.java \
+	java/awt/Scrollbar.java \
+	java/awt/ScrollPane.java \
+	java/awt/ScrollPaneAdjustable.java \
+	java/awt/Window.java \
+	java/awt/TextField.java \
+	java/awt/Label.java \
+	java/awt/Choice.java \
+	java/awt/TextArea.java \
+	java/awt/MenuBar.java \
+	java/awt/Menu.java \
+	java/awt/MenuComponent.java \
+	java/awt/PopupMenu.java \
+	java/awt/Dialog.java \
+	java/awt/FileDialog.java \
+	java/awt/MenuItem.java \
+	java/awt/Checkbox.java \
+	java/awt/CheckboxMenuItem.java \
+	java/awt/CheckboxGroup.java \
+	java/awt/Frame.java \
+        java/awt/Transparency.java \
+	java/awt/AWTException.java \
+	java/awt/AWTEvent.java \
+        java/awt/AWTKeyStroke.java \
+        java/awt/KeyboardFocusManager.java \
+	java/awt/Dimension.java \
+	java/awt/SystemColor.java \
+	java/awt/TrayIcon.java \
+	java/awt/DisplayMode.java \
+        java/awt/color/ColorSpace.java \
+        java/awt/color/ICC_Profile.java \
+        java/awt/geom/PathIterator.java \
+	java/awt/image/AffineTransformOp.java \
+	java/awt/image/ImageConsumer.java \
+	java/awt/image/ImageObserver.java \
+        java/awt/image/BufferedImage.java \
+	java/awt/image/ColorModel.java \
+	java/awt/image/ConvolveOp.java \
+	java/awt/image/DirectColorModel.java \
+	java/awt/image/IndexColorModel.java \
+	java/awt/image/DataBuffer.java \
+        java/awt/datatransfer/Transferable.java \
+        java/awt/datatransfer/DataFlavor.java \
+        java/awt/datatransfer/UnsupportedFlavorException.java \
+        java/awt/datatransfer/Clipboard.java \
+	java/awt/datatransfer/ClipboardOwner.java \
+	java/awt/datatransfer/StringSelection.java \
+	java/awt/event/AdjustmentEvent.java \
+	java/awt/event/KeyEvent.java \
+	java/awt/event/MouseEvent.java \
+	java/awt/event/MouseWheelEvent.java \
+	java/awt/event/FocusEvent.java \
+	java/awt/event/InputEvent.java \
+	java/awt/event/WindowEvent.java \
+	java/awt/event/NativeLibLoader.java \
+	java/awt/peer/ComponentPeer.java \
+	java/awt/dnd/DnDConstants.java \
+	sun/awt/CausedFocusEvent.java
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/FILES_export_windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,252 @@
+#
+# Copyright (c) 2000, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# FILES_export definitions for Win32
+
+FILES_export = \
+	java/awt/AlphaComposite.java \
+	java/awt/MouseInfo.java \
+        java/awt/Graphics.java \
+        java/awt/Color.java \
+        java/awt/Image.java \
+        java/awt/Rectangle.java \
+        java/awt/Event.java \
+        java/awt/Font.java \
+        java/awt/FontMetrics.java \
+        java/awt/Toolkit.java \
+        java/awt/Component.java \
+        java/awt/Container.java \
+        java/awt/Canvas.java \
+        java/awt/Button.java \
+        java/awt/List.java \
+	java/awt/Adjustable.java \
+        java/awt/Scrollbar.java \
+        java/awt/ScrollPane.java \
+        java/awt/ScrollPaneAdjustable.java \
+        java/awt/Transparency.java \
+	java/awt/Window.java \
+        java/awt/TextField.java \
+        java/awt/Label.java \
+        java/awt/Choice.java \
+        java/awt/TextComponent.java \
+        java/awt/TextArea.java \
+        java/awt/MenuBar.java \
+        java/awt/Menu.java \
+	java/awt/Dialog.java \
+	java/awt/FileDialog.java \
+        java/awt/MenuItem.java \
+	java/awt/MenuComponent.java \
+        java/awt/Checkbox.java \
+        java/awt/CheckboxGroup.java \
+        java/awt/CheckboxMenuItem.java \
+        java/awt/Frame.java \
+	java/awt/Insets.java \
+	java/awt/Cursor.java \
+	java/awt/Dimension.java \
+	java/awt/PopupMenu.java \
+        java/awt/AWTEvent.java \
+        java/awt/AWTException.java \
+        java/awt/AWTKeyStroke.java \
+        java/awt/KeyboardFocusManager.java \
+	java/awt/DisplayMode.java \
+        java/awt/TrayIcon.java \
+	java/awt/datatransfer/StringSelection.java \
+	java/awt/datatransfer/Transferable.java \
+	java/awt/dnd/DnDConstants.java \
+	java/awt/event/ActionEvent.java \
+	java/awt/event/AdjustmentEvent.java \
+	java/awt/event/ComponentEvent.java \
+	java/awt/event/FocusEvent.java \
+	java/awt/event/ItemEvent.java \
+	java/awt/event/InputEvent.java \
+	java/awt/event/InvocationEvent.java \
+	java/awt/event/KeyEvent.java \
+	java/awt/event/MouseEvent.java \
+	java/awt/event/MouseWheelEvent.java \
+	java/awt/event/WindowEvent.java \
+	java/awt/event/InputMethodEvent.java \
+	java/awt/im/InputMethodHighlight.java \
+	java/awt/im/spi/InputMethod.java \
+	java/awt/font/TextHitInfo.java \
+	java/text/AttributedCharacterIterator.java \
+	java/text/AttributedString.java \
+        java/awt/geom/PathIterator.java \
+	java/awt/image/AffineTransformOp.java \
+	java/awt/image/ImageConsumer.java \
+	java/awt/image/ImageObserver.java \
+        java/awt/image/BufferedImage.java \
+        java/awt/image/ColorModel.java \
+        java/awt/image/ConvolveOp.java \
+        java/awt/image/DirectColorModel.java \
+        java/awt/image/IndexColorModel.java \
+        java/awt/image/Raster.java \
+        java/awt/color/ColorSpace.java \
+        java/awt/color/ICC_Profile.java \
+	java/awt/peer/ComponentPeer.java \
+	java/awt/peer/MenuComponentPeer.java \
+        java/io/InputStream.java
+
+FILES_export2 = \
+	sun/awt/im/InputMethodContext.java \
+	sun/awt/EmbeddedFrame.java \
+	sun/awt/KeyboardFocusManagerPeerImpl.java \
+	sun/awt/windows/WEmbeddedFrame.java \
+	sun/awt/windows/WEmbeddedFramePeer.java \
+	sun/awt/Win32FontManager.java \
+        sun/awt/Win32GraphicsEnvironment.java \
+        sun/awt/Win32GraphicsDevice.java \
+        sun/awt/Win32GraphicsConfig.java \
+        sun/java2d/SunGraphicsEnvironment.java \
+        sun/java2d/SunGraphics2D.java \
+        sun/java2d/SurfaceData.java \
+        sun/awt/image/IntegerComponentRaster.java \
+        sun/awt/image/ImagingLib.java \
+	sun/awt/image/BufImgSurfaceData.java \
+	sun/awt/image/DataBufferNative.java \
+        sun/awt/shell/Win32ShellFolder2.java \
+	sun/java2d/windows/GDIBlitLoops.java \
+	sun/java2d/windows/GDIRenderer.java \
+	sun/java2d/windows/GDIWindowSurfaceData.java \
+        sun/java2d/windows/WindowsFlags.java \
+	sun/java2d/loops/Blit.java \
+	sun/java2d/loops/BlitBg.java \
+	sun/java2d/loops/ScaledBlit.java \
+	sun/java2d/loops/FillRect.java \
+	sun/java2d/loops/FillSpans.java \
+	sun/java2d/loops/FillParallelogram.java \
+	sun/java2d/loops/DrawParallelogram.java \
+        sun/java2d/loops/DrawGlyphList.java \
+        sun/java2d/loops/DrawGlyphListAA.java \
+        sun/java2d/loops/DrawGlyphListLCD.java \
+	sun/java2d/loops/DrawLine.java \
+	sun/java2d/loops/DrawRect.java \
+	sun/java2d/loops/DrawPolygons.java \
+        sun/java2d/loops/DrawPath.java \
+        sun/java2d/loops/FillPath.java \
+	sun/java2d/loops/MaskBlit.java \
+	sun/java2d/loops/MaskFill.java \
+	sun/java2d/loops/TransformHelper.java \
+	sun/java2d/loops/GraphicsPrimitiveMgr.java \
+        sun/java2d/loops/GraphicsPrimitive.java \
+        sun/java2d/cmm/CMSManager.java \
+        sun/java2d/cmm/PCMM.java \
+        sun/java2d/cmm/ColorTransform.java \
+        sun/awt/ScrollPaneWheelScroller.java \
+        sun/awt/datatransfer/DataTransferer.java \
+	sun/awt/datatransfer/SunClipboard.java \
+	sun/awt/dnd/SunDragSourceContextPeer.java \
+        sun/awt/windows/WToolkitThreadBlockedHandler.java
+
+FILES_export3 = \
+        java/awt/CheckboxMenuItem.java \
+        java/awt/Menu.java \
+	java/awt/MenuBar.java \
+	java/awt/MenuComponent.java \
+        java/awt/MenuItem.java \
+	sun/awt/PlatformFont.java \
+	sun/awt/FontDescriptor.java \
+	sun/awt/CharsetString.java \
+	java/awt/image/DataBuffer.java \
+        sun/awt/image/GifImageDecoder.java \
+	sun/awt/image/ImageRepresentation.java \
+	sun/awt/windows/WCustomCursor.java \
+	sun/awt/windows/WDefaultFontCharset.java \
+	sun/awt/windows/WButtonPeer.java \
+	sun/awt/windows/WCanvasPeer.java \
+	sun/awt/windows/WCheckboxPeer.java \
+	sun/awt/windows/WCheckboxMenuItemPeer.java \
+	sun/awt/windows/WChoicePeer.java \
+	sun/awt/windows/WClipboard.java \
+	sun/awt/windows/WColor.java \
+	sun/awt/windows/WDataTransferer.java \
+	sun/awt/windows/WDesktopPeer.java \
+	sun/awt/windows/WDesktopProperties.java \
+	sun/awt/windows/WDialogPeer.java \
+	sun/awt/windows/WDragSourceContextPeer.java \
+	sun/awt/windows/WDropTargetContextPeer.java \
+	sun/awt/windows/WFileDialogPeer.java \
+	sun/awt/windows/WFontPeer.java \
+	sun/awt/windows/WFontMetrics.java \
+	sun/awt/windows/WFramePeer.java \
+	sun/awt/windows/WGlobalCursorManager.java \
+	sun/awt/windows/WInputMethod.java \
+	sun/awt/windows/WInputMethodDescriptor.java \
+        sun/awt/windows/WComponentPeer.java \
+        sun/awt/windows/WLabelPeer.java \
+        sun/awt/windows/WListPeer.java \
+	sun/awt/windows/WMenuBarPeer.java \
+	sun/awt/windows/WMenuItemPeer.java \
+	sun/awt/windows/WMenuPeer.java \
+	sun/awt/windows/WObjectPeer.java \
+	sun/awt/windows/WPopupMenuPeer.java \
+	sun/awt/windows/WPrintDialog.java \
+	sun/awt/windows/WPrintDialogPeer.java \
+	sun/awt/windows/WPrinterJob.java \
+        sun/awt/windows/WRobotPeer.java \
+        sun/awt/windows/WScrollbarPeer.java \
+        sun/awt/windows/WScrollPanePeer.java \
+        sun/awt/windows/WTextAreaPeer.java \
+        sun/awt/windows/WTextComponentPeer.java \
+        sun/awt/windows/WTextFieldPeer.java \
+	sun/awt/windows/WPanelPeer.java \
+        sun/awt/windows/WToolkit.java \
+        sun/awt/windows/WWindowPeer.java \
+        sun/awt/windows/ThemeReader.java \
+	sun/awt/windows/WBufferStrategy.java \
+	sun/awt/windows/WTrayIconPeer.java \
+	sun/awt/image/ImagingLib.java \
+	sun/awt/ExtendedKeyCodes.java \
+        sun/java2d/pipe/hw/AccelSurface.java \
+        sun/java2d/pipe/hw/AccelDeviceEventNotifier.java \
+        sun/java2d/pipe/hw/ContextCapabilities.java \
+        sun/java2d/pipe/BufferedContext.java \
+        sun/java2d/pipe/BufferedMaskBlit.java \
+        sun/java2d/pipe/BufferedOpCodes.java \
+        sun/java2d/pipe/BufferedPaints.java \
+        sun/java2d/pipe/BufferedRenderPipe.java \
+        sun/java2d/pipe/BufferedTextPipe.java \
+        sun/java2d/pipe/RenderBuffer.java \
+	sun/java2d/pipe/ShapeSpanIterator.java \
+	sun/java2d/pipe/SpanClipRenderer.java \
+	sun/java2d/pipe/RegionIterator.java \
+	sun/java2d/opengl/OGLBlitLoops.java \
+	sun/java2d/opengl/OGLContext.java \
+	sun/java2d/opengl/OGLMaskFill.java \
+	sun/java2d/opengl/OGLPaints.java \
+	sun/java2d/opengl/OGLRenderQueue.java \
+	sun/java2d/opengl/OGLRenderer.java \
+	sun/java2d/opengl/OGLSurfaceData.java \
+	sun/java2d/opengl/OGLTextRenderer.java \
+	sun/java2d/opengl/WGLGraphicsConfig.java \
+	sun/java2d/opengl/WGLSurfaceData.java \
+	sun/java2d/d3d/D3DBlitLoops.java \
+	sun/java2d/d3d/D3DGraphicsDevice.java \
+	sun/java2d/d3d/D3DSurfaceData.java \
+	sun/java2d/d3d/D3DMaskFill.java \
+	sun/java2d/d3d/D3DPaints.java \
+	sun/java2d/d3d/D3DRenderQueue.java \
+	sun/java2d/d3d/D3DRenderer.java \
+	sun/java2d/d3d/D3DTextRenderer.java \
+	sun/java2d/d3d/D3DContext.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,568 @@
+#
+# Copyright (c) 1995, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.awt
+LIBRARY = awt
+PRODUCT = sun
+
+# Tell Defs.gmk that VIS is needed
+VIS_NEEDED=true
+
+# Use highest optimization level
+OPTMIZATION_LEVEL = HIGHEST
+
+include $(BUILDDIR)/common/Defs.gmk
+include $(BUILDDIR)/Tools.gmk
+
+OTHER_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES
+
+#
+# Files
+#
+
+#
+# Include all Java source files in sun/awt and sun/java2d, except for:
+# sun/awt/resources       handled by java/awt/Makefile
+# sun/java2d/pisces       handled by sun/pisces/Makefile
+#
+AUTO_FILES_JAVA_DIRS = sun/awt sun/java2d com/sun/awt
+AUTO_JAVA_PRUNE = resources pisces
+
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+
+#
+# Files
+#
+include FILES_c_windows.gmk
+include FILES_export_windows.gmk
+
+#
+# Prune files that are currently unused on Windows (but still used on
+# Solaris/Linux).
+#
+AUTO_JAVA_PRUNE += RemoteOffScreenImage.java
+
+OTHER_CFLAGS += $(GX_OPTION) -DMLIB_NO_LIBSUNMATH -DUNICODE -D_UNICODE
+OTHER_CXXFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
+
+ifeq ($(ARCH_DATA_MODEL), 64)
+  OTHER_CFLAGS += -DMLIB_OS64BIT
+endif
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifneq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
+
+#
+# Files
+#
+include FILES_c_unix.gmk
+include FILES_export_unix.gmk
+#
+# Prune the sun/awt/X11 subdirectory, which is handled by sun/xawt/Makefile.
+# Also prune files that are currently unused on Solaris/Linux (but still
+# used on Windows).
+#
+AUTO_JAVA_PRUNE += X11 AWTCharset.java
+
+ifeq  ($(PLATFORM), solaris)
+FILES_c = $(FILES_2D_c)
+FILES_c += awt_LoadLibrary.c
+OTHER_LDLIBS = $(JVMLIB) $(LIBM) $(LIBDL)
+ifeq ($(CC_VER), 5.8)
+  ifndef REMOVE_ALL_WORKAROUNDS
+    ifeq ($(ARCH_FAMILY), i586)
+      # If on Solaris 11 (or dlfcn.h has unknown_control_flow pragmas in it)
+      #   we trigger a SS11 bug that causes the compiler to crash (bug 6343678)
+      #   Here we check to see if we need this workaround and change the opt 
+      #   settings for this one file.
+      USE_WORKAROUND:=$(shell $(GREP) unknown_control_flow /usr/include/dlfcn.h)
+      ifneq ($(USE_WORKAROUND),)
+	ifeq ($(FASTDEBUG), true)
+          CFLAGS_DBG/awt_Mlib.o = -xO0 \
+	    $(warning  "WARNING: Using workaround for SS11 bug 6343678, on $@")
+	endif
+        # Compiler bug 6343678 need to prevent a SEGV in the compiler
+        CFLAGS_OPT/awt_Mlib.o = -g \
+	  $(warning  "WARNING: Using workaround for SS11 bug 6343678, on $@")
+      endif
+    endif
+  endif
+endif
+endif
+
+ifeq  ($(PLATFORM), linux)
+FILES_c = $(FILES_2D_c)
+FILES_c += awt_LoadLibrary.c
+OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
+OTHER_LDLIBS = $(JVMLIB) $(LIBM) $(LIBDL)
+endif
+
+FILES_c += initIDs.c
+
+ifeq ($(PLATFORM), macosx)
+FILES_c = $(FILES_2D_c)
+FILES_c += awt_LoadLibrary.c
+OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
+OTHER_LDLIBS = $(JVMLIB) $(LIBM)
+endif
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
+endif # PLATFORM 
+
+ifeq ($(PLATFORM), macosx)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv MAC OS X
+
+#
+# Files
+#
+include FILES_c_macosx.gmk
+include FILES_export_macosx.gmk
+
+FILES_objc = $(FILES_AWT_objc)
+OTHER_LDLIBS = -lmlib_image $(JVMLIB) $(LIBM) \
+    -framework Cocoa \
+    -framework OpenGL \
+    -framework JavaNativeFoundation \
+    -framework JavaRuntimeSupport \
+    -framework ApplicationServices \
+    -framework AudioToolbox
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ MAC OS X
+endif # PLATFORM 
+
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS-SPARC
+# solaris-sparc and solaris-sparcv9 both build 'vis'
+ifeq ("$(PLATFORM)-$(ARCH_FAMILY)", "solaris-sparc")
+  FILES_c += $(FILES_2D_vis)
+  ASFLAGS += -P
+  FILES_s += mlib_v_ImageCopy_blk.s
+  INLINE_VIS = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
+  CFLAGS_sparcv9 = -DMLIB_OS64BIT
+  
+  CFLAGS += $(CFLAGS_$(ARCH)) -DMLIB_ADD_SUFF $(INLINE_VIS) \
+	    -I$(SHARE_SRC)/native/sun/awt/medialib \
+	    -I$(PLATFORM_SRC)/native/sun/awt/medialib \
+	    -I$(PLATFORM_SRC)/native/sun/java2d/loops
+
+vpath %.c  $(PLATFORM_SRC)/native/sun/java2d/loops
+vpath %.c  $(SHARE_SRC)/native/sun/awt/medialib
+vpath %.c  $(PLATFORM_SRC)/native/sun/awt/medialib
+vpath %.s  $(PLATFORM_SRC)/native/sun/awt/medialib
+
+else
+  FILES_c += MapAccelFunc.c
+endif
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS-SPARC
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+ifeq ($(PLATFORM), windows)
+  RESOURCE_BUNDLES_COMPILED_PROPERTIES += \
+	sun/awt/windows/awtLocalization.properties
+endif
+
+#
+# Rules
+#
+ifeq ($(PLATFORM), linux)
+  FILES_m = mapfile-vers-linux
+  # libawt.so on Linux is statically linked with Motif and contains all the
+  # Xm symbols. Mapfile is disabled so the symbols will remain public.
+  LDNOMAP=true
+endif
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+COMPILEFONTCONFIG_FLAGS =
+ifdef ALT_COMPILEFONTCONFIG_FLAGS
+  COMPILEFONTCONFIG_FLAGS += $(ALT_COMPILEFONTCONFIG_FLAGS)
+endif
+build: fontconfigs
+
+
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+#
+# Additional dependencies.
+#
+# If make.depend is not working correctly, then it can be omitted
+# if you always build from a clean workspace. 
+
+include make.depend
+
+# required additional rules:
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifneq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
+
+ifndef OPENJDK
+build: dgalibs
+endif
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
+endif # PLATFORM
+
+clobber clean:: java2d.clean fontconfigs.clean
+
+ifndef OPENJDK
+clobber clean:: dgalib.clean 
+endif
+
+java2d.clean:
+	$(RM) -r $(CLASSBINDIR)/sun/java2d .classes.*
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image/gif
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image/cvutils
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/shell
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/medialib
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/debug
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/utility
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe
+vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)/image
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+vpath %.cpp   $(PLATFORM_SRC)/native/sun/windows
+vpath %.cpp   $(PLATFORM_SRC)/native/$(PKGDIR)
+vpath %.cpp   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/windows
+vpath %.cpp   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/d3d
+vpath %.c     $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c     $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c     $(SHARE_SRC)/native/$(PKGDIR)/../font
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifneq (,$(findstring $(PLATFORM), linux bsd))
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../font
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
+endif # PLATFORM
+
+ifeq ($(PLATFORM), macosx)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv MAC OS X
+vpath %.m   $(call NativeSrcDirList,,native/com/apple/resources)
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ MAC OS X
+endif # PLATFORM
+
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+OTHER_LDLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \
+               imm32.lib ole32.lib uuid.lib shell32.lib \
+               comdlg32.lib winmm.lib comctl32.lib \
+               shlwapi.lib delayimp.lib \
+               $(JVMLIB) \
+               /DELAYLOAD:user32.dll /DELAYLOAD:gdi32.dll \
+               /DELAYLOAD:shell32.dll /DELAYLOAD:winmm.dll \
+               /DELAYLOAD:winspool.drv /DELAYLOAD:imm32.dll \
+               /DELAYLOAD:ole32.dll /DELAYLOAD:comdlg32.dll \
+               /DELAYLOAD:comctl32.dll /DELAYLOAD:shlwapi.dll
+
+clean:: awt.clean
+
+awt.clean: 
+	$(RM) $(TEMPDIR)/awt.ico 
+	$(RM) $(TEMPDIR)/awt.res 
+	$(RM) $(TEMPDIR)/hand.cur 
+	$(RM) $(TEMPDIR)/check.bmp
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifneq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
+
+LIBXTST = -lXtst
+
+# Use -lXmu for EditRes support
+LIBXMU_DBG	= -lXmu
+LIBXMU_OPT	=
+LIBXMU	        = $(LIBXMU_$(VARIANT))
+
+#
+# Extra C flags.
+#
+
+
+ifndef OPENJDK
+
+#
+# Solaris X11 Direct Graphics Access library
+#
+
+_DGALIBS_sparc = \
+	libxinerama.so \
+	libjdgaSUNWcg6.so \
+	libjdgaSUNWffb.so \
+	libjdgaSUNWm64.so \
+	libjdgaSUNWafb.so
+
+_DGALIBS_sparcv9 = \
+	libxinerama.so \
+	libjdgaSUNWcg6.so \
+	libjdgaSUNWffb.so \
+	libjdgaSUNWm64.so \
+	libjdgaSUNWafb.so
+
+_DGALIBS_i586 = 	# no i586 library yet
+
+_DGALIBS_amd64 = 	# no amd64 library yet
+
+DGALIBS = $(_DGALIBS_$(ARCH):%=$(LIBDIR)/$(LIBARCH)/%)
+
+dgalibs: $(DGALIBS)
+
+$(LIBDIR)/$(LIBARCH)/libxinerama.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libxinerama.so
+	$(install-file)
+	$(call chmod-file, a+x)
+
+$(LIBDIR)/$(LIBARCH)/libjdgaSUNW%.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libjdgaSUNW%.so
+	$(install-file)
+	$(call chmod-file, a+x)
+
+$(LIBDIR)/$(LIBARCH)/libjdgaSUNWafb.so: $(LIBDIR)/$(LIBARCH)/libjdgaSUNWffb.so
+	$(prep-target)
+	$(call install-sym-link, libjdgaSUNWffb.so)
+
+clean:: dgalib.clean
+
+dgalib.clean:
+	$(RM) $(LIBDIR)/$(LIBARCH)/libjdgaSUNW* $(LIBDIR)/$(LIBARCH)/libxinerama.so
+endif
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
+endif # PLATFORM
+
+#
+# Font configs
+#
+
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+
+FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/windows
+_FONTCONFIGS = \
+        fontconfig.properties
+
+FONTCONFIGS_SRC_PREFIX =
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifeq ($(PLATFORM), linux)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
+ifdef OPENJDK
+
+FONTCONFIGS_SRC	= $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
+_FONTCONFIGS	= \
+	fontconfig.properties				\
+	fontconfig.SuSE.properties                      \
+	fontconfig.Ubuntu.properties                    \
+	fontconfig.Fedora.properties
+else
+
+FONTCONFIGS_SRC	= $(CLOSED_SRC)/solaris/classes/sun/awt/fontconfigs
+_FONTCONFIGS	= \
+	fontconfig.properties				\
+	fontconfig.RedHat.5.properties			\
+	fontconfig.RedHat.6.properties			\
+	fontconfig.Turbo.properties			\
+	fontconfig.SuSE.10.properties                   \
+	fontconfig.SuSE.11.properties
+endif
+
+FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
+endif # PLATFORM
+
+ifeq ($(PLATFORM), solaris)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS
+
+FONTCONFIGS_SRC	= $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
+_FONTCONFIGS	= \
+	fontconfig.properties
+
+FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS
+endif # PLATFORM
+
+
+ifeq ($(PLATFORM), macosx)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv MAC OS X
+
+FONTCONFIGS_SRC = $(JDK_TOPDIR)/src/macosx/classes/sun/awt/fontconfigs
+_FONTCONFIGS    = \
+        fontconfig.properties
+
+FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ MAC OS X
+endif # PLATFORM
+
+FONTCONFIGS     = $(_FONTCONFIGS:%=$(LIBDIR)/%.src)
+BINARYFONTCONFIGS = $(_FONTCONFIGS:%.properties=$(LIBDIR)/%.bfc)
+
+fontconfigs: $(FONTCONFIGS) $(BINARYFONTCONFIGS)
+
+$(LIBDIR)/%.src: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%
+	$(install-file)
+
+$(LIBDIR)/%.bfc: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%.properties \
+    $(BUILD_TOOLS)
+	$(prep-target)
+	$(TOOL_COMPILEFONTCONFIG) $(COMPILEFONTCONFIG_FLAGS) $< $@
+	$(call chmod-file, 444)
+	@$(java-vm-cleanup)
+
+fontconfigs.clean :
+	$(RM) $(FONTCONFIGS)
+	$(RM) $(BINARYFONTCONFIGS)
+
+ifeq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
+OTHER_CFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
+
+ifeq ($(MILESTONE), internal)
+  CPPFLAGS += -DINTERNAL_BUILD
+endif
+
+#
+# Useful variables that name parts of the src tree.
+#
+WINAWT_native        = $(PLATFORM_SRC)/native/sun/windows
+WINAWT_COMMON_native = $(PLATFORM_SRC)/native/sun/awt_common
+
+# FIXME: awt shouldn't have to see the VM's private headers.
+# FIXME: if you re-order this list, the build breaks, possibly because 
+#        of filename collision. Such a collision, if present, is pure
+#        evil. Need to investigate this.
+
+OTHER_INCLUDES += -I$(CLASSHDRDIR)/../../java/jvm \
+	-I$(OBJDIR) \
+	-I$(SHARE_SRC)/native/common \
+	-I$(WINAWT_native) \
+	-I$(DXSDK_INCLUDE_PATH) \
+	-I$(SHARE_SRC)/native/sun/awt/image/cvutils \
+	-I$(SHARE_SRC)/native/sun/awt/image \
+	-I$(SHARE_SRC)/native/sun/java2d/loops \
+	-I$(SHARE_SRC)/native/sun/java2d \
+	-I$(PLATFORM_SRC)/native/sun/java2d \
+	-I$(SHARE_SRC)/native/sun/java2d/opengl \
+	-I$(PLATFORM_SRC)/native/sun/java2d/d3d \
+	-I$(PLATFORM_SRC)/native/sun/java2d/opengl \
+	-I$(PLATFORM_SRC)/native/sun/java2d/windows \
+	-I$(SHARE_SRC)/native/sun/font \
+	-I$(SHARE_SRC)/native/sun/java2d/pipe \
+	-I$(SHARE_SRC)/native/sun/dc/path \
+	-I$(SHARE_SRC)/native/sun/dc/doe \
+	-I$(SHARE_SRC)/native/sun/awt/debug \
+	-I$(PLATFORM_SRC)/native/sun/awt
+#	-I$(WINAWT_COMMON_native)
+
+# this is only required for compiling )/native/sun/awt/medialib/*.c files
+#
+OTHER_INCLUDES += -I$(SHARE_SRC)/native/sun/awt/medialib
+
+#
+# .res file construction.
+#
+
+ifdef OPENJDK
+    RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
+else
+    RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
+endif
+VERSIONINFO_RESOURCE = $(WINAWT_native)/awt.rc
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
+endif # PLATFORM
+
+ifneq ($(PLATFORM), windows)
+# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
+
+#
+# Other extra flags needed for compiling.
+#
+
+ifeq ($(PLATFORM), linux)
+CPPFLAGS += -I$(OPENWIN_HOME)/include \
+            -I$(OPENWIN_HOME)/include/X11/extensions \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/font 
+endif
+CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/../font \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/image \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/shell \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d \
+	    -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \
+	    -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \
+	    -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR) \
+	    $(EVENT_MODEL)
+
+ifeq ($(PLATFORM), linux)
+LDFLAGS += -L$(OPENWIN_LIB)
+endif
+
+LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \
+	   $(AWT_RUNPATH)
+
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
+endif # PLATFORM
+
+CLASSES.export += java.io.InputStream \
+		  java.lang.Integer \
+		  java.lang.ThreadGroup
+
+.PHONY: dgalibs dgalib.clean fontconfigs fontconfigs.clean
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/README	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,26 @@
+README:
+
+This directory builds the new version of the Windows AWT.  It's been built
+successfully with Visual C++ 4.1, but since it uses very little of VC++'s
+runtime, it will probably work with other versions of that compiler.
+
+Included in this project is a generated file, make.depend, which lists
+all interdependencies of the source files.  This file is generated *on
+Solaris or Linux* with the following command:
+
+	% gnumake -f Depend.mak
+
+This step only needs to be run when new files are added to the project,
+or include statements are changed.
+
+Also, if new CClassHeader dependencies are added for Java class files
+that are not built from a Java source file listed in java_awt.jmk or
+windows_awt.jmk then you need to update the FILES_java list in the
+"else" part of the "ifdef JFILES" branch in Depend.mak.
+At some point we should look at a way to share the explicit list of
+exported files between Depend.mak and GNUmakefile.
+
+****NOTE****
+ In order to run this command, the executable 
+/usr/openwin/bin/makedepend is required to be in your $PATH.
+****NOTE****
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/make.depend	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,357 @@
+$(OBJDIR)/AccelGlyphCache.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/AlphaMacros.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/AlphaMath.obj::	../../../src/share/native/sun/java2d/loops/AlphaMath.h
+
+$(OBJDIR)/Any3Byte.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/Any3Byte.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Any4Byte.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/Any4Byte.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/AnyByte.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByte.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/AnyInt.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/AnyShort.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/awt_AWTEvent.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_BitmapUtil.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_BitmapUtil.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Brush.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Button.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Button.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WButtonPeer.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Button.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Canvas.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsConfig.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Checkbox.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Checkbox.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WCheckboxPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Checkbox.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Choice.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Choice.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Toolkit.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WChoicePeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Choice.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dimension.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Clipboard.obj::	$(CLASSHDRDIR)/sun_awt_windows_WClipboard.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Clipboard.h ../../../src/windows/native/sun/windows/awt_DataTransferer.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Color.obj::	$(CLASSHDRDIR)/sun_awt_windows_WColor.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Color.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Component.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Color.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_InputMethodEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_MouseWheelEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Insets.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Toolkit.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WInputMethod.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WPanelPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jawt.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_BitmapUtil.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Cursor.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dimension.h ../../../src/windows/native/sun/windows/awt_DnDDT.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_InputEvent.h ../../../src/windows/native/sun/windows/awt_InputTextInfor.h ../../../src/windows/native/sun/windows/awt_Insets.h ../../../src/windows/native/sun/windows/awt_KeyEvent.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_MouseEvent.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Container.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Cursor.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Cursor.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WCustomCursor.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WGlobalCursorManager.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_Cursor.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_IconCursor.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DataTransferer.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_TextComponent.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_datatransfer_DataTransferer.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDataTransferer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/common/locale_str.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_DataTransferer.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DnDDT.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_TextComponent.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DCHolder.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_DCHolder.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_ole.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Debug.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Desktop.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DesktopProperties.obj::	$(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_windows_WDesktopProperties.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DesktopProperties.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Dialog.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Dimension.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dimension.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DnDDS.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_dnd_DnDConstants.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_dnd_SunDragSourceContextPeer.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDragSourceContextPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Cursor.h ../../../src/windows/native/sun/windows/awt_DataTransferer.h ../../../src/windows/native/sun/windows/awt_DCHolder.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DnDDS.h ../../../src/windows/native/sun/windows/awt_DnDDT.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_ole.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DnDDT.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_dnd_DnDConstants.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDropTargetContextPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_DataTransferer.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DnDDS.h ../../../src/windows/native/sun/windows/awt_DnDDT.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_ole.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_DrawingSurface.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jawt.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jawt_md.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DrawingSurface.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Event.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Event.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_FileDialog.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_FileDialog.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFileDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_FileDialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Font.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDefaultFontCharset.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFontPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/Disposer.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Frame.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/java_lang_Integer.h $(CLASSHDRDIR)/sun_awt_EmbeddedFrame.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WEmbeddedFrame.h $(CLASSHDRDIR)/sun_awt_windows_WEmbeddedFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_IconCursor.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_GDIObject.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_IconCursor.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_IconCursor.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_ImageRep.obj::	$(CLASSHDRDIR)/sun_awt_image_ImageRepresentation.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/image/awt_parseImage.h ../../../src/share/native/sun/awt/image/imageInitIDs.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/awt_ImagingLib.obj::	$(CLASSHDRDIR)/java_awt_color_ColorSpace.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_image_BufferedImage.h $(CLASSHDRDIR)/java_awt_image_ConvolveOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_image_ImagingLib.h $(CLASSHDRDIR)/sun_awt_image_IntegerComponentRaster.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/image/awt_parseImage.h ../../../src/share/native/sun/awt/image/imageInitIDs.h ../../../src/share/native/sun/awt/medialib/awt_ImagingLib.h ../../../src/share/native/sun/awt/medialib/mlib_image_get.h ../../../src/share/native/sun/awt/medialib/mlib_image_types.h ../../../src/share/native/sun/awt/medialib/mlib_status.h ../../../src/share/native/sun/awt/medialib/mlib_types.h ../../../src/share/native/sun/awt/medialib/safe_alloc.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/awt_Mlib.h
+
+$(OBJDIR)/awt_InputEvent.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_InputEvent.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_InputMethod.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputMethodEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WInputMethod.h $(CLASSHDRDIR)/sun_awt_windows_WInputMethodDescriptor.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/common/locale_str.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_InputTextInfor.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_InputTextInfor.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Insets.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Insets.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_KeyboardFocusManager.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_KeyboardFocusManager.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_KeyEvent.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_KeyEvent.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Label.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Label.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WLabelPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Label.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_List.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_List.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WListPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dimension.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_List.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Menu.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_MenuBar.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_MenuItem.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_CheckboxMenuItem.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Toolkit.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCheckboxMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DesktopProperties.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Mlib.obj::	$(CLASSHDRDIR)/java_awt_image_BufferedImage.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/medialib/awt_ImagingLib.h ../../../src/share/native/sun/awt/medialib/mlib_image_get.h ../../../src/share/native/sun/awt/medialib/mlib_image_types.h ../../../src/share/native/sun/awt/medialib/mlib_status.h ../../../src/share/native/sun/awt/medialib/mlib_types.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt_Mlib.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_MouseEvent.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_MouseEvent.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_new.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_new.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Object.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_ole.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_ole.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Palette.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_CustomPaletteDef.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/img_util_md.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Panel.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Panel.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_parseImage.obj::	$(CLASSHDRDIR)/java_awt_color_ColorSpace.h $(CLASSHDRDIR)/java_awt_image_BufferedImage.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_image_ImagingLib.h $(CLASSHDRDIR)/sun_awt_image_IntegerComponentRaster.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/image/awt_parseImage.h ../../../src/share/native/sun/awt/image/imageInitIDs.h ../../../src/share/native/sun/awt/medialib/awt_ImagingLib.h ../../../src/share/native/sun/awt/medialib/mlib_image_get.h ../../../src/share/native/sun/awt/medialib/mlib_image_types.h ../../../src/share/native/sun/awt/medialib/mlib_status.h ../../../src/share/native/sun/awt/medialib/mlib_types.h ../../../src/share/native/sun/awt/medialib/safe_alloc.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/awt_Mlib.h
+
+$(OBJDIR)/awt_Pen.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_PopupMenu.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_PopupMenu.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WPopupMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Event.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_PopupMenu.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_PrintControl.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_PrintControl.h ../../../src/windows/native/sun/windows/awt_PrintDialog.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_PrintDialog.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WPrintDialog.h $(CLASSHDRDIR)/sun_awt_windows_WPrintDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_PrintControl.h ../../../src/windows/native/sun/windows/awt_PrintDialog.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_PrintJob.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WPrinterJob.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_PrintControl.h ../../../src/windows/native/sun/windows/awt_PrintDialog.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Rectangle.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Rectangle.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Robot.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WRobotPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Robot.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Scrollbar.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Scrollbar.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WScrollbarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Scrollbar.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_ScrollPane.obj::	$(CLASSHDRDIR)/java_awt_Adjustable.h $(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_AdjustmentEvent.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_Insets.h $(CLASSHDRDIR)/java_awt_Scrollbar.h $(CLASSHDRDIR)/java_awt_ScrollPane.h $(CLASSHDRDIR)/java_awt_ScrollPaneAdjustable.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WScrollbarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WScrollPanePeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Insets.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Panel.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Scrollbar.h ../../../src/windows/native/sun/windows/awt_ScrollPane.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_TextArea.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_TextArea.h $(CLASSHDRDIR)/java_awt_TextComponent.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextAreaPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_TextArea.h ../../../src/windows/native/sun/windows/awt_TextComponent.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_TextComponent.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_TextComponent.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_TextComponent.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_TextField.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_TextComponent.h $(CLASSHDRDIR)/java_awt_TextField.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WTextFieldPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_TextComponent.h ../../../src/windows/native/sun/windows/awt_TextField.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Toolkit.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputMethodEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_FileDialog.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_List.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_ComponentPeer.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_PopupMenu.h $(CLASSHDRDIR)/java_awt_Toolkit.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFileDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WListPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WPopupMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jawt.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jawt_md.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Clipboard.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Cursor.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_DesktopProperties.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_DnDDS.h ../../../src/windows/native/sun/windows/awt_DnDDT.h ../../../src/windows/native/sun/windows/awt_DrawingSurface.h ../../../src/windows/native/sun/windows/awt_FileDialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_InputEvent.h ../../../src/windows/native/sun/windows/awt_KeyEvent.h ../../../src/windows/native/sun/windows/awt_List.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_new.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_PopupMenu.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/CmdIDList.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/DllUtil.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_TrayIcon.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_ActionEvent.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_InputEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_TrayIcon.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WTrayIconPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_TrayIcon.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Win32GraphicsConfig.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_image_DataBuffer.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_Win32GraphicsConfig.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsConfig.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Win32GraphicsDevice.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_color_ColorSpace.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_image_DataBuffer.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_Win32GraphicsDevice.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/awt/image/dither.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/img_util_md.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Win32GraphicsEnv.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_Win32FontManager.h $(CLASSHDRDIR)/sun_awt_Win32GraphicsEnvironment.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/java2d/windows/WindowsFlags.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/DllUtil.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/awt_Window.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Container.h $(CLASSHDRDIR)/java_awt_Dialog.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_ComponentEvent.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_FontMetrics.h $(CLASSHDRDIR)/java_awt_Frame.h $(CLASSHDRDIR)/java_awt_Insets.h $(CLASSHDRDIR)/java_awt_Menu.h $(CLASSHDRDIR)/java_awt_MenuBar.h $(CLASSHDRDIR)/java_awt_MenuComponent.h $(CLASSHDRDIR)/java_awt_MenuItem.h $(CLASSHDRDIR)/java_awt_peer_MenuComponentPeer.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WDialogPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WFramePeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuBarPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuItemPeer.h $(CLASSHDRDIR)/sun_awt_windows_WMenuPeer.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_BitmapUtil.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Container.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Dialog.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_Frame.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_IconCursor.h ../../../src/windows/native/sun/windows/awt_Insets.h ../../../src/windows/native/sun/windows/awt_Menu.h ../../../src/windows/native/sun/windows/awt_MenuBar.h ../../../src/windows/native/sun/windows/awt_MenuItem.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Panel.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/Blit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_Blit.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/BlitBg.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_BlitBg.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/BufferedMaskBlit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedMaskBlit.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedOpCodes.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntBgr.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/BufferedRenderPipe.obj::	$(CLASSHDRDIR)/sun_java2d_pipe_BufferedOpCodes.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedRenderPipe.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/BufImgSurfaceData.obj::	$(CLASSHDRDIR)/sun_awt_image_BufImgSurfaceData.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/image/BufImgSurfaceData.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/img_util_md.h
+
+$(OBJDIR)/ByteBinary1Bit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByteBinary.h ../../../src/share/native/sun/java2d/loops/ByteBinary1Bit.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ByteBinary2Bit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByteBinary.h ../../../src/share/native/sun/java2d/loops/ByteBinary2Bit.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ByteBinary4Bit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByteBinary.h ../../../src/share/native/sun/java2d/loops/ByteBinary4Bit.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ByteGray.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/Index8Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ByteIndexed.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/CmdIDList.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/CmdIDList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/ComCtl32Util.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/ComCtl32Util.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DBlitLoops.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DBlitLoops.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntBgr.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/Ushort555Rgb.h ../../../src/share/native/sun/java2d/loops/Ushort565Rgb.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DBlitLoops.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DBufImgOps.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DBufImgOps.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DContext.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DBufImgOps.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DGlyphCache.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPaints.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DShaders.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DTextRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DGlyphCache.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DGlyphCache.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DTextRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DGraphicsDevice.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DGraphicsDevice.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DGraphicsDevice.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DMaskBlit.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskBlit.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DMaskCache.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DMaskFill.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DMaskFill.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskFill.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DPaints.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DPaints_MultiGradient.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPaints.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DPipelineManager.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DBadHardware.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/WindowsFlags.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DRenderer.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DRenderer.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedRenderPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DRenderQueue.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DBlitLoops.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedOpCodes.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedRenderPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DBlitLoops.h ../../../src/windows/native/sun/java2d/d3d/D3DBufImgOps.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskBlit.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskFill.h ../../../src/windows/native/sun/java2d/d3d/D3DPaints.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DTextRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DResourceManager.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPaints.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DTextRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DSurfaceData.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/java_awt_Window.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WCanvasPeer.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_awt_windows_WWindowPeer.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_BitmapUtil.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Canvas.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/awt_Window.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/D3DTextRenderer.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DTextRenderer.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DGlyphCache.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DRenderQueue.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DTextRenderer.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/D3DVertexCacher.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPaints.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/DataBufferNative.obj::	$(CLASSHDRDIR)/sun_awt_image_DataBufferNative.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/debug_assert.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/debug_mem.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/debug_trace.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/debug_util.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/Devices.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/java_awt_Transparency.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DContext_D3DContextCaps.h $(CLASSHDRDIR)/sun_java2d_d3d_D3DSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelDeviceEventNotifier.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/ShaderList.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/d3d/D3DContext.h ../../../src/windows/native/sun/java2d/d3d/D3DMaskCache.h ../../../src/windows/native/sun/java2d/d3d/D3DPipeline.h ../../../src/windows/native/sun/java2d/d3d/D3DPipelineManager.h ../../../src/windows/native/sun/java2d/d3d/D3DResourceManager.h ../../../src/windows/native/sun/java2d/d3d/D3DSurfaceData.h ../../../src/windows/native/sun/java2d/d3d/D3DVertexCacher.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/Disposer.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/Disposer.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/dither.obj::	../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/awt/image/dither.h ../../../src/windows/native/sun/windows/colordata.h
+
+$(OBJDIR)/DllUtil.obj::	../../../src/windows/native/sun/windows/DllUtil.h
+
+$(OBJDIR)/DrawLine.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_DrawLine.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/DrawParallelogram.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_DrawParallelogram.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/ParallelogramUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/DrawPath.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_DrawPath.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/DrawPath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/ProcessPath.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/DrawPolygons.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_DrawPolygons.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/DrawRect.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_DrawRect.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FillParallelogram.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_FillParallelogram.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/ParallelogramUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FillPath.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_FillPath.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/DrawPath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/ProcessPath.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FillRect.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_FillRect.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FillSpans.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_FillSpans.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FourByteAbgr.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/Any4Byte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/FourByteAbgr.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/FourByteAbgrPre.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/Any4Byte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/FourByteAbgrPre.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/GDIBlitLoops.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_windows_GDIBlitLoops.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/GDIHashtable.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/GDIRenderer.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/java_awt_geom_PathIterator.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_windows_GDIRenderer.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/GDIWindowSurfaceData.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h $(CLASSHDRDIR)/sun_java2d_windows_GDIWindowSurfaceData.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/Disposer.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/java2d/windows/WindowsFlags.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/gifdecoder.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/GraphicsPrimitiveMgr.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_GraphicsPrimitiveMgr.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Hashtable.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/imageInitIDs.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/image/imageInitIDs.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/img_colors.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/img_globals.obj::	$(CLASSHDRDIR)/java_awt_image_DirectColorModel.h $(CLASSHDRDIR)/java_awt_image_IndexColorModel.h $(CLASSHDRDIR)/java_awt_Transparency.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/windows/javavm/export/jni_md.h
+
+$(OBJDIR)/Index12Gray.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/Index8Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Index8Gray.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/Index8Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/initIDs.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/IntArgb.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/IntArgbBm.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/IntArgbPre.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/IntBgr.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/Index8Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntBgr.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/IntRgb.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/IntRgbx.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyInt.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/IntRgbx.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/MaskBlit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_MaskBlit.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/MaskFill.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_MaskFill.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/ParallelogramUtils.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/MouseInfo.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/ObjectList.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/OGLBlitLoops.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLBlitLoops.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLBlitLoops.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLBufImgOps.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLBufImgOps.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLContext.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLFuncs.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLMaskBlit.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLMaskBlit.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLMaskFill.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLMaskFill.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLMaskFill.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/opengl/OGLVertexCache.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLPaints.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedPaints.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLPaints.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLRenderer.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLRenderer.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedRenderPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderer.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLRenderQueue.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLBlitLoops.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedOpCodes.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedRenderPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLBlitLoops.h ../../../src/share/native/sun/java2d/opengl/OGLBufImgOps.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLMaskBlit.h ../../../src/share/native/sun/java2d/opengl/OGLMaskFill.h ../../../src/share/native/sun/java2d/opengl/OGLPaints.h ../../../src/share/native/sun/java2d/opengl/OGLRenderer.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/opengl/OGLTextRenderer.h ../../../src/share/native/sun/java2d/opengl/OGLVertexCache.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLSurfaceData.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLTextRenderer.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLTextRenderer.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedTextPipe.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/font/AccelGlyphCache.h ../../../src/share/native/sun/font/fontscalerdefs.h ../../../src/share/native/sun/font/sunfontids.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/opengl/OGLTextRenderer.h ../../../src/share/native/sun/java2d/opengl/OGLVertexCache.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/OGLVertexCache.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h $(CLASSHDRDIR)/sun_java2d_SunGraphics2D.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLPaints.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/opengl/OGLVertexCache.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h
+
+$(OBJDIR)/ProcessPath.obj::	$(CLASSHDRDIR)/java_awt_geom_PathIterator.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/ProcessPath.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Region.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h
+
+$(OBJDIR)/ScaledBlit.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/sun_java2d_loops_ScaledBlit.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ShapeSpanIterator.obj::	$(CLASSHDRDIR)/java_awt_geom_PathIterator.h $(CLASSHDRDIR)/sun_java2d_pipe_ShapeSpanIterator.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/pipe/PathConsumer2D.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/ShellFolder2.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/SpanClipRenderer.obj::	$(CLASSHDRDIR)/sun_java2d_pipe_RegionIterator.h $(CLASSHDRDIR)/sun_java2d_pipe_SpanClipRenderer.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/SurfaceData.obj::	../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/Disposer.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/ThemeReader.obj::	$(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_ThemeReader.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/ThreeByteBgr.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/Any3Byte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Trace.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h
+
+$(OBJDIR)/TransformHelper.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h $(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_loops_TransformHelper.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/pipe/Region.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/awt/utility/rect.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Ushort4444Argb.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/Ushort4444Argb.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Ushort555Rgb.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/Ushort555Rgb.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Ushort555Rgbx.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/Ushort555Rgbx.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/Ushort565Rgb.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/Ushort4444Argb.h ../../../src/share/native/sun/java2d/loops/Ushort565Rgb.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/UshortGray.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyShort.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/UshortIndexed.obj::	$(CLASSHDRDIR)/java_awt_AlphaComposite.h ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/sun/java2d/loops/AlphaMacros.h ../../../src/share/native/sun/java2d/loops/AlphaMath.h ../../../src/share/native/sun/java2d/loops/AnyByte.h ../../../src/share/native/sun/java2d/loops/ByteGray.h ../../../src/share/native/sun/java2d/loops/ByteIndexed.h ../../../src/share/native/sun/java2d/loops/GlyphImageRef.h ../../../src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h ../../../src/share/native/sun/java2d/loops/Index12Gray.h ../../../src/share/native/sun/java2d/loops/IntArgb.h ../../../src/share/native/sun/java2d/loops/IntArgbBm.h ../../../src/share/native/sun/java2d/loops/IntArgbPre.h ../../../src/share/native/sun/java2d/loops/IntDcm.h ../../../src/share/native/sun/java2d/loops/IntRgb.h ../../../src/share/native/sun/java2d/loops/LineUtils.h ../../../src/share/native/sun/java2d/loops/LoopMacros.h ../../../src/share/native/sun/java2d/loops/ThreeByteBgr.h ../../../src/share/native/sun/java2d/loops/UshortGray.h ../../../src/share/native/sun/java2d/loops/UshortIndexed.h ../../../src/share/native/sun/java2d/pipe/SpanIterator.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/sun/java2d/j2d_md.h
+
+$(OBJDIR)/WGLGraphicsConfig.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_opengl_WGLGraphicsConfig.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h ../../../src/windows/native/sun/java2d/opengl/WGLGraphicsConfig.h ../../../src/windows/native/sun/java2d/opengl/WGLSurfaceData.h
+
+$(OBJDIR)/WGLSurfaceData.obj::	$(CLASSHDRDIR)/java_awt_image_AffineTransformOp.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLContext_OGLContextCaps.h $(CLASSHDRDIR)/sun_java2d_opengl_OGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_opengl_WGLSurfaceData.h $(CLASSHDRDIR)/sun_java2d_pipe_BufferedContext.h $(CLASSHDRDIR)/sun_java2d_pipe_hw_AccelSurface.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/gdefs.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/gl.h ../../../src/share/native/sun/java2d/opengl/J2D_GL/glext.h ../../../src/share/native/sun/java2d/opengl/OGLContext.h ../../../src/share/native/sun/java2d/opengl/OGLFuncMacros.h ../../../src/share/native/sun/java2d/opengl/OGLFuncs.h ../../../src/share/native/sun/java2d/opengl/OGLRenderQueue.h ../../../src/share/native/sun/java2d/opengl/OGLSurfaceData.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/gdefs_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/j2d_md.h ../../../src/windows/native/sun/java2d/opengl/J2D_GL/wglext.h ../../../src/windows/native/sun/java2d/opengl/OGLFuncs_md.h ../../../src/windows/native/sun/java2d/opengl/WGLGraphicsConfig.h ../../../src/windows/native/sun/java2d/opengl/WGLSurfaceData.h
+
+$(OBJDIR)/WindowsFlags.obj::	../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/WindowsFlags.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/stdhdrs.h
+
+$(OBJDIR)/WPrinterJob.obj::	$(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/classfile_constants.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_PrintControl.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/stdhdrs.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/mapfile-mawt-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,285 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+#		Java_java_awt_KeyboardFocusManager_getGlobalHeavyweightFocusOwner;
+
+# Define public interface.
+# These are the libmawt exports. See mapfile-vers for the libawt exports
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+		Java_sun_awt_DefaultMouseInfoPeer_fillPointWithCoords;
+		Java_sun_awt_DefaultMouseInfoPeer_isWindowUnderMouse;
+		Java_java_awt_AWTEvent_nativeSetSource;
+		Java_java_awt_Checkbox_initIDs;
+		Java_java_awt_Component_initIDs;
+		Java_java_awt_Dialog_initIDs;
+		Java_java_awt_Font_initIDs;
+                Java_java_awt_KeyboardFocusManager_initIDs;
+		Java_java_awt_Menu_initIDs;
+		Java_java_awt_MenuComponent_initIDs;
+		Java_java_awt_MenuItem_initIDs;
+		Java_java_awt_Scrollbar_initIDs;
+		Java_java_awt_ScrollPane_initIDs;
+		Java_java_awt_TextArea_initIDs;
+		Java_sun_awt_FontDescriptor_initIDs;
+		Java_sun_awt_KeyboardFocusManagerPeerImpl_clearNativeGlobalFocusOwner;
+                Java_sun_awt_KeyboardFocusManagerPeerImpl_getNativeFocusOwner;
+                Java_sun_awt_KeyboardFocusManagerPeerImpl_getNativeFocusedWindow;
+                Java_sun_awt_UNIXToolkit_check_1gtk;
+                Java_sun_awt_UNIXToolkit_load_1gtk;
+                Java_sun_awt_UNIXToolkit_unload_1gtk;
+                Java_sun_awt_UNIXToolkit_load_1stock_1icon;
+                Java_sun_awt_UNIXToolkit_load_1gtk_1icon;
+		Java_sun_awt_UNIXToolkit_nativeSync;
+		Java_sun_awt_X11InputMethod_disposeXIC;
+		Java_sun_awt_X11InputMethod_isCompositionEnabledNative;
+		Java_sun_awt_X11InputMethod_resetXIC;
+		Java_sun_awt_X11InputMethod_setCompositionEnabledNative;
+		Java_sun_awt_X11InputMethod_turnoffStatusWindow;
+		Java_sun_awt_SunToolkit_closeSplashScreen;
+		Java_sun_awt_PlatformFont_initIDs;
+		Java_sun_awt_X11GraphicsConfig_init;
+		Java_sun_awt_X11GraphicsConfig_dispose;
+		Java_sun_awt_X11GraphicsConfig_pGetBounds;
+		Java_sun_awt_X11GraphicsConfig_getNumColors;
+		Java_sun_awt_X11GraphicsConfig_getXResolution;
+		Java_sun_awt_X11GraphicsConfig_getYResolution;
+		Java_sun_awt_X11GraphicsConfig_createBackBuffer;
+		Java_sun_awt_X11GraphicsConfig_destroyBackBuffer;
+		Java_sun_awt_X11GraphicsConfig_swapBuffers;
+                Java_sun_awt_X11GraphicsConfig_isTranslucencyCapable;
+		Java_sun_awt_X11GraphicsDevice_isDBESupported;
+		Java_sun_awt_X11GraphicsDevice_getDisplay;
+		Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals;
+		Java_sun_awt_X11GraphicsDevice_getNumConfigs;
+		Java_sun_awt_X11GraphicsDevice_initIDs;
+                Java_sun_awt_X11GraphicsDevice_initXrandrExtension;
+                Java_sun_awt_X11GraphicsDevice_enterFullScreenExclusive;
+                Java_sun_awt_X11GraphicsDevice_exitFullScreenExclusive;
+                Java_sun_awt_X11GraphicsDevice_getCurrentDisplayMode;
+                Java_sun_awt_X11GraphicsDevice_enumDisplayModes;
+                Java_sun_awt_X11GraphicsDevice_configDisplayMode;
+                Java_sun_awt_X11GraphicsDevice_resetNativeData;
+		Java_sun_awt_X11GraphicsEnvironment_checkShmExt;
+		Java_sun_awt_X11GraphicsEnvironment_getDefaultScreenNum;
+		Java_sun_awt_X11GraphicsEnvironment_getDisplayString;
+		Java_sun_awt_X11GraphicsEnvironment_getNumScreens;
+		Java_sun_awt_X11GraphicsEnvironment_initDisplay;
+                Java_sun_awt_X11GraphicsEnvironment_initGLX;
+		Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
+		Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
+		Java_sun_awt_X11GraphicsEnvironment_initXRender;
+		Java_java_awt_AWTEvent_initIDs;
+		Java_java_awt_Button_initIDs;
+		Java_java_awt_Container_initIDs;
+		Java_java_awt_Cursor_finalizeImpl;
+		Java_java_awt_Cursor_initIDs;
+		Java_java_awt_Event_initIDs;
+		Java_java_awt_event_InputEvent_initIDs;
+		Java_java_awt_event_KeyEvent_initIDs;
+		Java_java_awt_FileDialog_initIDs;
+		Java_java_awt_Frame_initIDs;
+		Java_java_awt_Insets_initIDs;
+		Java_java_awt_TextField_initIDs;
+		Java_java_awt_Window_initIDs;
+		Java_sun_awt_X11GraphicsConfig_init;
+		Java_sun_awt_X11GraphicsConfig_initIDs;
+		Java_sun_awt_X11GraphicsConfig_makeColorModel;
+		Java_sun_awt_X11GraphicsDevice_getConfigVisualId;
+                Java_sun_awt_X11GraphicsDevice_getConfigColormap;
+                Java_sun_awt_X11GraphicsDevice_getConfigDepth;
+
+                Java_sun_java2d_x11_X11PMBlitLoops_nativeBlit;
+                Java_sun_java2d_x11_X11PMBlitLoops_updateBitmask;
+		Java_sun_java2d_x11_X11PMBlitBgLoops_nativeBlitBg;
+		Java_sun_java2d_x11_X11Renderer_XFillSpans;
+		Java_sun_java2d_x11_X11Renderer_XDrawArc;
+		Java_sun_java2d_x11_X11Renderer_XDrawLine;
+		Java_sun_java2d_x11_X11Renderer_XDrawOval;
+		Java_sun_java2d_x11_X11Renderer_XDrawPoly;
+		Java_sun_java2d_x11_X11Renderer_XDrawRect;
+		Java_sun_java2d_x11_X11Renderer_XDrawRoundRect;
+                Java_sun_java2d_x11_X11Renderer_XDoPath;
+		Java_sun_java2d_x11_X11Renderer_XFillArc;
+		Java_sun_java2d_x11_X11Renderer_XFillOval;
+		Java_sun_java2d_x11_X11Renderer_XFillPoly;
+		Java_sun_java2d_x11_X11Renderer_XFillRect;
+		Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
+		Java_sun_java2d_x11_X11Renderer_devCopyArea;
+		Java_sun_java2d_x11_X11SurfaceData_initIDs;
+		Java_sun_java2d_x11_X11SurfaceData_initOps;
+		Java_sun_java2d_x11_X11SurfaceData_initSurface;
+		Java_sun_java2d_x11_X11SurfaceData_isDgaAvailable;
+		Java_sun_java2d_x11_X11SurfaceData_isShmPMAvailable;
+                Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+                Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+                Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+
+		Java_sun_java2d_x11_XSurfaceData_initOps;
+		Java_sun_java2d_x11_XSurfaceData_XCreateGC;
+		Java_sun_java2d_x11_XSurfaceData_XResetClip;
+		Java_sun_java2d_x11_XSurfaceData_XSetClip;
+		Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
+		Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
+		Java_sun_java2d_x11_XSurfaceData_setInvalid;
+		Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
+		Java_sun_java2d_xr_XRSurfaceData_initXRPicture;
+		Java_sun_java2d_xr_XRSurfaceData_initIDs;
+		Java_sun_java2d_xr_XRSurfaceData_XRInitSurface;
+		Java_sun_java2d_xr_XRSurfaceData_freeXSDOPicture;
+		Java_sun_java2d_xr_XRBackendNative_initIDs;
+		Java_sun_java2d_xr_XIDGenerator_bufferXIDs;
+		Java_sun_java2d_xr_XRBackendNative_freeGC;
+		Java_sun_java2d_xr_XRBackendNative_createGC;
+		Java_sun_java2d_xr_XRBackendNative_createPixmap;
+		Java_sun_java2d_xr_XRBackendNative_createPictureNative;
+		Java_sun_java2d_xr_XRBackendNative_freePicture;
+		Java_sun_java2d_xr_XRBackendNative_freePixmap;
+		Java_sun_java2d_xr_XRBackendNative_setPictureRepeat;
+		Java_sun_java2d_xr_XRBackendNative_setGCExposures;
+		Java_sun_java2d_xr_XRBackendNative_setGCForeground;
+		Java_sun_java2d_xr_XRBackendNative_copyArea;
+		Java_sun_java2d_xr_XRBackendNative_renderComposite;
+		Java_sun_java2d_xr_XRBackendNative_renderRectangle;
+		Java_sun_java2d_xr_XRBackendNative_XRenderRectanglesNative;
+		Java_sun_java2d_xr_XRBackendNative_XRSetTransformNative;
+		Java_sun_java2d_xr_XRBackendNative_XRCreateLinearGradientPaintNative;
+		Java_sun_java2d_xr_XRBackendNative_XRCreateRadialGradientPaintNative;
+		Java_sun_java2d_xr_XRBackendNative_setFilter;
+		Java_sun_java2d_xr_XRBackendNative_XRSetClipNative;
+		Java_sun_java2d_xr_XRBackendNative_putMaskNative;
+		Java_sun_java2d_xr_XRBackendNative_XRAddGlyphsNative;
+		Java_sun_java2d_xr_XRBackendNative_XRFreeGlyphsNative;
+		Java_sun_java2d_xr_XRBackendNative_XRenderCreateGlyphSetNative;
+		Java_sun_java2d_xr_XRBackendNative_XRenderCompositeTextNative;
+		Java_sun_java2d_xr_XRBackendNative_setGCMode;
+		Java_sun_java2d_xr_XRBackendNative_GCRectanglesNative;
+		Java_sun_java2d_xr_XRUtils_initFormatPtrs;
+		Java_sun_java2d_xr_XRBackendNative_renderCompositeTrapezoidsNative;
+		XRT_DrawGlyphList;
+
+                Java_sun_java2d_opengl_OGLContext_getOGLIdString;
+                Java_sun_java2d_opengl_OGLMaskFill_maskFill;
+                Java_sun_java2d_opengl_OGLRenderer_drawPoly;
+                Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer;
+                Java_sun_java2d_opengl_OGLSurfaceData_initTexture;
+                Java_sun_java2d_opengl_OGLSurfaceData_initFBObject;
+                Java_sun_java2d_opengl_OGLSurfaceData_initFlipBackbuffer;
+                Java_sun_java2d_opengl_OGLSurfaceData_getTextureID;
+                Java_sun_java2d_opengl_OGLSurfaceData_getTextureTarget;
+                Java_sun_java2d_opengl_OGLTextRenderer_drawGlyphList;
+                Java_sun_java2d_opengl_GLXGraphicsConfig_getGLXConfigInfo;
+                Java_sun_java2d_opengl_GLXGraphicsConfig_initConfig;
+                Java_sun_java2d_opengl_GLXGraphicsConfig_getOGLCapabilities;
+                Java_sun_java2d_opengl_GLXSurfaceData_initOps;
+                Java_sun_java2d_opengl_GLXSurfaceData_initPbuffer;
+
+                Java_sun_print_CUPSPrinter_initIDs;
+                Java_sun_print_CUPSPrinter_getCupsServer;
+                Java_sun_print_CUPSPrinter_getCupsPort;
+                Java_sun_print_CUPSPrinter_canConnect;	
+                Java_sun_print_CUPSPrinter_getMedia;
+                Java_sun_print_CUPSPrinter_getPageSizes;
+
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box_1gap;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1check;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1expander;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1extension;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1flat_1box;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1focus;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1handle;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1hline;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1option;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1shadow;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1slider;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1vline;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1background;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeStartPainting;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1switch_1theme;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1get_1gtk_1setting;
+                Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeSetRangeValue;
+                Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetXThickness;
+                Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetYThickness;
+                Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetColorForState;
+                Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetClassValue;
+                Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetPangoFontName;
+                
+		awt_display;
+		awt_Lock;
+		awt_Unlock;
+	        awt_GetDrawingSurface;
+	        awt_FreeDrawingSurface;
+	        awt_GetComponent;
+
+		X11SurfaceData_GetOps;
+		getDefaultConfig;
+                Java_sun_font_FontConfigManager_getFontConfig;
+                Java_sun_font_FontConfigManager_getFontConfigAASettings;
+		Java_sun_awt_X11FontManager_getFontPathNative;
+		Java_sun_font_SunFontManager_populateFontFileNameMap;
+
+		# CDE private entry point
+		Java_sun_awt_motif_XsessionWMcommand;
+		Java_sun_awt_motif_XsessionWMcommand_New;
+
+		# Java Plugin
+		getAwtLockFunctions;
+		getAwtData;
+		getAwtDisplay;
+		
+		# libfontmanager entry points
+		AWTIsHeadless;
+		AWTCountFonts;
+                AWTLoadFont;
+                AWTFreeFont;
+                AWTFontAscent;
+                AWTFontDescent;
+                AWTFontMinByte1;
+                AWTFontMaxByte1;
+                AWTFontMinCharOrByte2;
+                AWTFontMaxCharOrByte2;
+                AWTFontDefaultChar;
+                AWTFontPerChar;
+                AWTFontMaxBounds;
+                AWTFontTextExtents16;
+                AWTFreeChar;
+                AWTFontGenerateImage;
+                AWTCharAdvance;
+                AWTCharLBearing;
+                AWTCharRBearing;
+                AWTCharAscent;
+                AWTCharDescent;
+                AWTDrawGlyphList;
+                AccelGlyphCache_RemoveAllCellInfos;
+
+	local:
+		*;
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,197 @@
+#
+# Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+# These are the libawt exports, mapfile-mawt-vers contains the libmawt exports.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+		Java_java_awt_CheckboxMenuItem_initIDs;
+		Java_java_awt_Color_initIDs;
+		Java_java_awt_FontMetrics_initIDs;
+		Java_java_awt_image_BufferedImage_initIDs;
+		Java_sun_awt_image_DataBufferNative_getElem;
+		Java_sun_awt_image_DataBufferNative_setElem;
+		Java_java_awt_image_ColorModel_initIDs;
+		Java_java_awt_image_ComponentSampleModel_initIDs;
+		Java_java_awt_image_IndexColorModel_initIDs;
+		Java_java_awt_image_Kernel_initIDs;
+		Java_java_awt_image_Raster_initIDs;
+		Java_java_awt_image_SampleModel_initIDs;
+		Java_java_awt_Label_initIDs;
+		Java_java_awt_MenuBar_initIDs;
+		Java_java_awt_ScrollPaneAdjustable_initIDs;
+		Java_java_awt_Toolkit_initIDs;
+                Java_sun_awt_DebugSettings_setCTracingOn__Z; 
+                Java_sun_awt_DebugSettings_setCTracingOn__ZLjava_lang_String_2; 
+                Java_sun_awt_DebugSettings_setCTracingOn__ZLjava_lang_String_2I; 
+		Java_sun_awt_image_ByteComponentRaster_initIDs;
+		Java_sun_awt_image_GifImageDecoder_initIDs;
+		Java_sun_awt_image_GifImageDecoder_parseImage;
+		Java_sun_awt_image_ImageRepresentation_initIDs;
+		Java_sun_awt_image_ImageRepresentation_setDiffICM;
+		Java_sun_awt_image_ImageRepresentation_setICMpixels;
+		Java_sun_awt_image_ImagingLib_convolveBI;
+		Java_sun_awt_image_ImagingLib_convolveRaster;
+		Java_sun_awt_image_ImagingLib_init;
+		Java_sun_awt_image_ImagingLib_transformBI;
+		Java_sun_awt_image_ImagingLib_transformRaster;
+		Java_sun_awt_image_IntegerComponentRaster_initIDs;
+		Java_sun_awt_image_ShortComponentRaster_initIDs;
+                Java_sun_java2d_pipe_BufferedMaskBlit_enqueueTile;
+                Java_sun_java2d_pipe_BufferedRenderPipe_fillSpans;
+		Java_sun_java2d_pipe_SpanClipRenderer_eraseTile;
+		Java_sun_java2d_pipe_SpanClipRenderer_fillTile;
+                Java_sun_java2d_pipe_ShapeSpanIterator_addSegment;
+                Java_sun_java2d_pipe_ShapeSpanIterator_moveTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_lineTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_quadTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_curveTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_closePath;
+                Java_sun_java2d_pipe_ShapeSpanIterator_pathDone;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getNativeConsumer;
+                Java_sun_java2d_pipe_ShapeSpanIterator_appendPoly;
+                Java_sun_java2d_pipe_ShapeSpanIterator_dispose;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getNativeIterator;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getPathBox;
+                Java_sun_java2d_pipe_ShapeSpanIterator_initIDs;
+                Java_sun_java2d_pipe_ShapeSpanIterator_intersectClipBox;
+                Java_sun_java2d_pipe_ShapeSpanIterator_nextSpan;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setNormalize;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setOutputAreaXYXY;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setRule;
+                Java_sun_java2d_pipe_ShapeSpanIterator_skipDownTo;
+
+		Java_java_awt_Dimension_initIDs;
+		Java_java_awt_event_MouseEvent_initIDs;
+		Java_java_awt_image_DataBufferInt_initIDs;
+		Java_java_awt_image_SinglePixelPackedSampleModel_initIDs;
+		Java_java_awt_Rectangle_initIDs;
+		Java_sun_awt_image_BufImgSurfaceData_initIDs;
+		Java_sun_awt_image_BufImgSurfaceData_initRaster;
+                Java_sun_awt_image_BufImgSurfaceData_freeNativeICMData;
+		Java_sun_awt_image_BytePackedRaster_initIDs;
+		Java_sun_awt_image_ImagingLib_lookupByteBI;
+		Java_sun_awt_image_ImagingLib_lookupByteRaster;
+		Java_sun_java2d_SurfaceData_initIDs;
+		Java_sun_java2d_SurfaceData_isOpaqueGray;
+		Java_sun_java2d_Disposer_initIDs;
+		Java_sun_java2d_DefaultDisposerRecord_invokeNativeDispose;
+		Java_sun_java2d_loops_BlitBg_BlitBg;
+		Java_sun_java2d_loops_Blit_Blit;
+		Java_sun_java2d_loops_ScaledBlit_Scale;
+		Java_sun_java2d_loops_DrawLine_DrawLine;
+		Java_sun_java2d_loops_DrawPolygons_DrawPolygons;
+                Java_sun_java2d_loops_DrawPath_DrawPath;
+                Java_sun_java2d_loops_FillPath_FillPath;
+
+		Java_sun_java2d_loops_DrawRect_DrawRect;
+		Java_sun_java2d_loops_FillRect_FillRect;
+		Java_sun_java2d_loops_FillSpans_FillSpans;
+		Java_sun_java2d_loops_FillParallelogram_FillParallelogram;
+		Java_sun_java2d_loops_DrawParallelogram_DrawParallelogram;
+		Java_sun_java2d_loops_GraphicsPrimitiveMgr_initIDs;
+		Java_sun_java2d_loops_GraphicsPrimitiveMgr_registerNativeLoops;
+		Java_sun_java2d_loops_MaskBlit_MaskBlit;
+		Java_sun_java2d_loops_MaskFill_MaskFill;
+		Java_sun_java2d_loops_MaskFill_FillAAPgram;
+		Java_sun_java2d_loops_MaskFill_DrawAAPgram;
+		Java_sun_java2d_loops_TransformHelper_Transform;
+		Java_sun_java2d_pipe_Region_initIDs;
+		Java_sun_java2d_pipe_SpanClipRenderer_initIDs;
+		sun_awt_image_GifImageDecoder_initIDs;
+
+		# libmawt entry points
+		SurfaceData_InitOps;
+		SurfaceData_ThrowInvalidPipeException;
+                SurfaceData_IntersectBlitBounds;
+                SurfaceData_IntersectBoundsXYXY;
+		Region_GetBounds;
+		Region_GetInfo;
+		Region_StartIteration;
+		Region_CountIterationRects;
+		Region_NextIteration;
+		Region_EndIteration;
+		RegionToYXBandedRectangles;
+		GrPrim_CompGetXorInfo;
+		GrPrim_CompGetAlphaInfo;
+                J2dTraceImpl;
+                J2dTraceInit;
+		img_makePalette;
+		initInverseGrayLut;
+		make_dither_arrays;
+		make_uns_ordered_dither_array;
+
+		# variables exported to libmawt
+		std_img_oda_red;
+		std_img_oda_blue;
+		std_img_oda_green;
+		std_odas_computed;
+		g_CMpDataID;
+		colorValueID;
+                mul8table;
+                jvm;
+        
+                # ProcessPath entry points and data
+                doDrawPath;
+                doFillPath;
+                path2DNumTypesID;
+                path2DTypesID;
+                path2DWindingRuleID;
+                path2DFloatCoordsID;
+                sg2dStrokeHintID;
+                sunHints_INTVAL_STROKE_PURE;
+
+		# CDE private entry points
+                # These are in awt_LoadLibrary.c and falls through to libmawt.
+                # Evidently CDE needs this for backward compatability.
+		Java_sun_awt_motif_XsessionWMcommand;
+		Java_sun_awt_motif_XsessionWMcommand_New;
+
+		# Java Plugin
+                # This is in awt_LoadLibrary.c and falls through to libmawt.
+                # Evidently plugin needs this for backward compatability.
+		getAwtLockFunctions;
+		getAwtData;
+		getAwtDisplay;
+
+		# libfontmanager entry points
+		AWTIsHeadless;
+		GrPrim_Sg2dGetCompInfo;
+		GrPrim_Sg2dGetClip;
+		GetNativePrim;
+		SurfaceData_IntersectBounds;
+		SurfaceData_GetOps;
+		Disposer_AddRecord;
+		GrPrim_Sg2dGetEaRGB;
+		GrPrim_Sg2dGetPixel;
+		GrPrim_Sg2dGetLCDTextContrast;
+
+	local:
+		*;
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/mapfile-vers-linux	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,316 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface for libawt.so on Linux.
+# Linux port does not use mawt, all public symbols are in libawt.so
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+		Java_java_awt_CheckboxMenuItem_initIDs;
+		Java_java_awt_Color_initIDs;
+		Java_java_awt_FontMetrics_initIDs;
+		Java_java_awt_image_BufferedImage_initIDs;
+		Java_sun_awt_image_DataBufferNative_getElem;
+		Java_sun_awt_image_DataBufferNative_setElem;
+		Java_java_awt_image_ColorModel_initIDs;
+		Java_java_awt_image_ComponentSampleModel_initIDs;
+		Java_java_awt_image_IndexColorModel_initIDs;
+		Java_java_awt_image_Kernel_initIDs;
+		Java_java_awt_image_Raster_initIDs;
+		Java_java_awt_image_SampleModel_initIDs;
+		Java_java_awt_Label_initIDs;
+		Java_java_awt_MenuBar_initIDs;
+		Java_java_awt_ScrollPaneAdjustable_initIDs;
+		Java_java_awt_Toolkit_initIDs;
+		Java_java_awt_TrayIcon_initIDs;
+                Java_sun_awt_DebugSettings_setCTracingOn__Z; 
+                Java_sun_awt_DebugSettings_setCTracingOn__ZLjava_lang_String_2; 
+                Java_sun_awt_DebugSettings_setCTracingOn__ZLjava_lang_String_2I; 
+		Java_sun_awt_image_ByteComponentRaster_initIDs;
+		Java_sun_awt_image_GifImageDecoder_initIDs;
+		Java_sun_awt_image_GifImageDecoder_parseImage;
+		Java_sun_awt_image_Image_initIDs;
+		Java_sun_awt_image_ImageRepresentation_initIDs;
+		Java_sun_awt_image_ImageRepresentation_setDiffICM;
+		Java_sun_awt_image_ImageRepresentation_setICMpixels;
+		Java_sun_awt_image_ImagingLib_convolveBI;
+		Java_sun_awt_image_ImagingLib_convolveRaster;
+		Java_sun_awt_image_ImagingLib_init;
+		Java_sun_awt_image_ImagingLib_transformBI;
+		Java_sun_awt_image_ImagingLib_transformRaster;
+		Java_sun_awt_image_IntegerComponentRaster_initIDs;
+		Java_sun_awt_image_ShortComponentRaster_initIDs;
+		Java_sun_java2d_pipe_SpanClipRenderer_eraseTile;
+		Java_sun_java2d_pipe_SpanClipRenderer_fillTile;
+                Java_sun_java2d_pipe_ShapeSpanIterator_addSegment;
+                Java_sun_java2d_pipe_ShapeSpanIterator_moveTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_lineTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_quadTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_curveTo;
+                Java_sun_java2d_pipe_ShapeSpanIterator_closePath;
+                Java_sun_java2d_pipe_ShapeSpanIterator_pathDone;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getNativeConsumer;
+                Java_sun_java2d_pipe_ShapeSpanIterator_appendPoly;
+                Java_sun_java2d_pipe_ShapeSpanIterator_dispose;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getNativeIterator;
+                Java_sun_java2d_pipe_ShapeSpanIterator_getPathBox;
+                Java_sun_java2d_pipe_ShapeSpanIterator_initIDs;
+                Java_sun_java2d_pipe_ShapeSpanIterator_intersectClipBox;
+                Java_sun_java2d_pipe_ShapeSpanIterator_nextSpan;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setNormalize;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setOutputAreaXYXY;
+                Java_sun_java2d_pipe_ShapeSpanIterator_setRule;
+                Java_sun_java2d_pipe_ShapeSpanIterator_skipDownTo;
+
+		Java_java_awt_Dimension_initIDs;
+		Java_java_awt_event_MouseEvent_initIDs;
+		Java_java_awt_image_DataBufferInt_initIDs;
+		Java_java_awt_image_SinglePixelPackedSampleModel_initIDs;
+		Java_java_awt_Rectangle_initIDs;
+		Java_sun_awt_image_BufImgSurfaceData_getSurfaceData;
+		Java_sun_awt_image_BufImgSurfaceData_initIDs;
+		Java_sun_awt_image_BufImgSurfaceData_initRaster;
+		Java_sun_awt_image_BufImgSurfaceData_setSurfaceData;
+                Java_sun_awt_image_BufImgSurfaceData_freeNativeICMData;
+		Java_sun_awt_image_BytePackedRaster_initIDs;
+		Java_sun_awt_image_ImagingLib_lookupByteBI;
+		Java_sun_awt_image_ImagingLib_lookupByteRaster;
+		Java_sun_java2d_SurfaceData_initIDs;
+		Java_sun_java2d_SurfaceData_isOpaqueGray;
+		Java_sun_java2d_Disposer_initIDs;
+		Java_sun_java2d_DefaultDisposerRecord_invokeNativeDispose;
+		Java_sun_java2d_loops_BlitBg_BlitBg;
+		Java_sun_java2d_loops_Blit_Blit;
+		Java_sun_java2d_loops_ScaledBlit_Scale;
+		Java_sun_java2d_loops_DrawLine_DrawLine;
+		Java_sun_java2d_loops_DrawPolygons_DrawPolygons;
+		Java_sun_java2d_loops_DrawRect_DrawRect;
+		Java_sun_java2d_loops_FillRect_FillRect;
+		Java_sun_java2d_loops_FillSpans_FillSpans;
+		Java_sun_java2d_loops_GraphicsPrimitiveMgr_initIDs;
+		Java_sun_java2d_loops_GraphicsPrimitiveMgr_registerNativeLoops;
+		Java_sun_java2d_loops_MaskBlit_MaskBlit;
+		Java_sun_java2d_loops_MaskFill_MaskFill;
+		Java_sun_java2d_loops_MaskFill_FillAAPgram;
+		Java_sun_java2d_loops_MaskFill_DrawAAPgram;
+                Java_sun_java2d_pipe_BufferedRenderPipe_fillSpans;
+		Java_sun_java2d_pipe_SpanClipRenderer_initIDs;
+		sun_awt_image_GifImageDecoder_initIDs;
+
+		# libmawt entry points
+		SurfaceData_InitOps;
+		SurfaceData_ThrowInvalidPipeException;
+                Region_GetBounds;
+                Region_GetInfo;
+                Region_StartIteration;
+                Region_CountIterationRects;
+                Region_NextIteration;
+                Region_EndIteration;
+                GrPrim_CompGetXorInfo;
+                GrPrim_CompGetAlphaInfo;
+		img_makePalette;
+		initInverseGrayLut;
+		make_dither_arrays;
+		make_uns_ordered_dither_array;
+
+		# variables exported to libmawt
+		std_img_oda_red;
+		std_img_oda_blue;
+		std_img_oda_green;
+		std_odas_computed;
+		g_CMpDataID;
+		colorValueID;
+                jvm;
+
+		# CDE private entry point
+                # This is in awt_LoadLibrary.c and falls through to libmawt.
+                # Evidently CDE needs this for backward compatability.
+		Java_sun_awt_motif_XsessionWMcommand;
+
+		# Java Plugin
+                # This is in awt_LoadLibrary.c and falls through to libmawt.
+                # Evidently plugin needs this for backward compatability.
+		getAwtLockFunctions;
+		getAwtData;
+		getAwtDisplay;
+
+		# libfontmanager entry points
+		AWTIsHeadless;
+		GrPrim_Sg2dGetCompInfo;
+		GrPrim_Sg2dGetClip;
+		GetNativePrim;
+		SurfaceData_IntersectBounds;
+		SurfaceData_GetOps;
+		Disposer_AddRecord;
+		GrPrim_Sg2dGetEaRGB;
+		GrPrim_Sg2dGetPixel;
+		GrPrim_Sg2dGetLCDTextContrast;
+
+		Java_sun_awt_DefaultMouseInfoPeer_fillPointWithCoords;
+		Java_sun_awt_DefaultMouseInfoPeer_isWindowUnderMouse;
+		Java_java_awt_AWTEvent_nativeSetSource;
+		Java_java_awt_Checkbox_initIDs;
+		Java_java_awt_Component_initIDs;
+		Java_java_awt_Dialog_initIDs;
+		Java_java_awt_Font_initIDs;
+		Java_sun_awt_KeyboardFocusManagerPeerImpl_clearNativeGlobalFocusOwner;
+                Java_sun_awt_KeyboardFocusManagerPeerImpl_getNativeFocusOwner;
+                Java_sun_awt_KeyboardFocusManagerPeerImpl_getNativeFocusedWindow;
+                Java_java_awt_KeyboardFocusManager_initIDs;
+		Java_java_awt_Menu_initIDs;
+		Java_java_awt_MenuComponent_initIDs;
+		Java_java_awt_MenuItem_initIDs;
+		Java_java_awt_Scrollbar_initIDs;
+		Java_java_awt_ScrollPane_initIDs;
+		Java_java_awt_TextArea_initIDs;
+		Java_sun_awt_FontDescriptor_initIDs;
+		Java_sun_awt_X11InputMethod_disposeXIC;
+		Java_sun_awt_X11InputMethod_isCompositionEnabledNative;
+		Java_sun_awt_X11InputMethod_resetXIC;
+		Java_sun_awt_X11InputMethod_setCompositionEnabledNative;
+		Java_sun_awt_X11InputMethod_turnoffStatusWindow;
+		Java_sun_awt_SunToolkit_closeSplashScreen;
+		Java_sun_awt_PlatformFont_initIDs;
+		Java_sun_awt_X11GraphicsConfig_init;
+		Java_sun_awt_X11GraphicsConfig_dispose;
+		Java_sun_awt_X11GraphicsConfig_pGetBounds;
+		Java_sun_awt_X11GraphicsConfig_getNumColors;
+		Java_sun_awt_X11GraphicsConfig_getXResolution;
+		Java_sun_awt_X11GraphicsConfig_getYResolution;
+                Java_sun_awt_X11GraphicsConfig_isTranslucencyCapable;
+		Java_sun_awt_X11GraphicsDevice_isDBESupported;
+		Java_sun_awt_X11GraphicsDevice_getDisplay;
+		Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals;
+		Java_sun_awt_X11GraphicsDevice_getNumConfigs;
+		Java_sun_awt_X11GraphicsDevice_initIDs;
+                Java_sun_awt_X11GraphicsDevice_initXrandrExtension;
+                Java_sun_awt_X11GraphicsDevice_enterFullScreenExclusive;
+                Java_sun_awt_X11GraphicsDevice_exitFullScreenExclusive;
+                Java_sun_awt_X11GraphicsDevice_getCurrentDisplayMode;
+                Java_sun_awt_X11GraphicsDevice_enumDisplayModes;
+                Java_sun_awt_X11GraphicsDevice_configDisplayMode;
+                Java_sun_awt_X11GraphicsDevice_resetNativeData;
+		Java_sun_awt_X11GraphicsEnvironment_checkShmExt;
+		Java_sun_awt_X11GraphicsEnvironment_getDefaultScreenNum;
+		Java_sun_awt_X11GraphicsEnvironment_getDisplayString;
+		Java_sun_awt_X11GraphicsEnvironment_getNumScreens;
+		Java_sun_awt_X11GraphicsEnvironment_initDisplay;
+		Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
+		Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
+		Java_sun_awt_X11GraphicsEnvironment_initXRender;
+        
+        
+
+		Java_java_awt_AWTEvent_initIDs;
+		Java_java_awt_Button_initIDs;
+		Java_java_awt_Container_initIDs;
+		Java_java_awt_Cursor_finalizeImpl;
+		Java_java_awt_Cursor_initIDs;
+		Java_java_awt_Event_initIDs;
+		Java_java_awt_event_InputEvent_initIDs;
+		Java_java_awt_event_KeyEvent_initIDs;
+		Java_java_awt_FileDialog_initIDs;
+		Java_java_awt_Frame_initIDs;
+		Java_java_awt_Insets_initIDs;
+		Java_java_awt_TextField_initIDs;
+		Java_java_awt_Window_initIDs;
+		Java_sun_awt_motif_X11OffScreenImage_updateBitmask;
+		Java_sun_awt_X11GraphicsConfig_init;
+		Java_sun_awt_X11GraphicsConfig_initIDs;
+		Java_sun_awt_X11GraphicsConfig_makeColorModel;
+		Java_sun_awt_X11GraphicsDevice_getConfigVisualId;
+		Java_sun_awt_X11PMBlitLoops_Blit;
+		Java_sun_awt_X11PMBlitBgLoops_nativeBlitBg;
+		Java_sun_awt_X11Renderer_devFillSpans;
+		Java_sun_awt_X11Renderer_doDrawArc;
+		Java_sun_awt_X11Renderer_doDrawLine;
+		Java_sun_awt_X11Renderer_doDrawOval;
+		Java_sun_awt_X11Renderer_doDrawPoly;
+		Java_sun_awt_X11Renderer_doDrawRect;
+		Java_sun_awt_X11Renderer_doDrawRoundRect;
+		Java_sun_awt_X11Renderer_doFillArc;
+		Java_sun_awt_X11Renderer_doFillOval;
+		Java_sun_awt_X11Renderer_doFillPoly;
+		Java_sun_awt_X11Renderer_doFillRect;
+		Java_sun_awt_X11Renderer_doFillRoundRect;
+		Java_sun_awt_X11Renderer_devCopyArea;
+		Java_sun_awt_X11SurfaceData_initIDs;
+		Java_sun_awt_X11SurfaceData_initOps;
+		Java_sun_awt_X11SurfaceData_initSurface;
+		Java_sun_awt_X11SurfaceData_isDgaAvailable;
+		Java_sun_awt_X11SurfaceData_setInvalid;
+		Java_sun_awt_X11SurfaceData_flushNativeSurface;
+		awt_display;
+		awt_lock;
+		awt_Lock;
+		awt_Unlock;
+	        awt_GetDrawingSurface;
+	        awt_FreeDrawingSurface;
+	        awt_GetComponent;
+
+		X11SurfaceData_GetOps;
+		getDefaultConfig;
+                Java_sun_font_FontConfigManager_getFontConfig;
+                Java_sun_font_FontConfigManager_getFontConfigAASettings;
+		Java_sun_awt_X11FontManager_getFontPathNative;
+		Java_sun_font_SunFontManager_populateFontFileNameMap;
+
+		# CDE private entry point
+		Java_sun_awt_motif_XsessionWMcommand;
+
+		# Java Plugin
+		getAwtLockFunctions;
+		getAwtData;
+		getAwtDisplay;
+		
+		# libfontmanager entry points
+		AWTIsHeadless;
+		AWTCountFonts;
+                AWTLoadFont;
+                AWTFreeFont;
+                AWTFontMinByte1;
+                AWTFontMaxByte1;
+                AWTFontMinCharOrByte2;
+                AWTFontMaxCharOrByte2;
+                AWTFontDefaultChar;
+                AWTFontPerChar;
+                AWTFontMaxBounds;
+                AWTFontTextExtents16;
+                AWTFreeChar;
+                AWTFontGenerateImage;
+                AWTCharAdvance;
+                AWTCharLBearing;
+                AWTCharRBearing;
+                AWTCharAscent;
+                AWTCharDescent;
+                AWTDrawGlyphList;
+                AccelGlyphCache_RemoveAllCellInfos;
+
+	local:
+		*;
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/awt/mawt.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,229 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# to create directory:
+#
+INIT += $(LIB_LOCATION) 
+
+#
+# Files
+#
+# mawt.gmk is just used in building X/Motif native code, so
+# this list of java files is no longer included.
+#include FILES_java_unix.gmk
+include $(BUILDDIR)/sun/awt/FILES_c_unix.gmk
+
+include $(BUILDDIR)/sun/awt/FILES_export_unix.gmk
+
+# Check which C files should be built.  Headless uses only
+# non-motif files.  Also, a version-specific motif file is
+# compiled based on the motif version.
+FILES_c = $(FILES_NO_MOTIF_c)
+
+ifeq ($(PLATFORM), solaris)
+  ifneq ($(ARCH), amd64)
+    FILES_reorder += reorder-$(ARCH)
+  endif
+endif
+
+#
+# Rules
+#
+
+# Class files should be built & clobbered in make/sun/awt
+# If removing this line, also reinclude sun_awt.jmk
+DONT_CLOBBER_CLASSES = true
+
+
+ifndef HEADLESS
+ifeq ($(VARIANT), OPT)
+FILES_m = ../awt/mapfile-mawt-vers
+endif
+endif
+
+# Since this library will be living in a subdirectory below the other libraries
+#   we need to add an extra runpath so that libraries in the upper directory
+#   are found at runtime.
+LD_RUNPATH_EXTRAS = ..
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+$(LIB_LOCATION):
+	$(MKDIR) -p $@
+
+clean:: 
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/alphacomposite
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image/gif
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image/cvutils
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/shell
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/medialib
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/debug
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../font
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe
+vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)/image
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/robot_child
+
+#
+# Libraries to link in.
+#
+
+
+ifeq ($(DEBUG_BINARIES), true)
+  CFLAGS += -g
+endif
+ifeq ($(HEADLESS),true)
+CFLAGS += -DHEADLESS=$(HEADLESS)
+CPPFLAGS += -DHEADLESS=$(HEADLESS)
+OTHER_LDLIBS =
+else
+LIBXTST = -lXtst
+ifeq ($(PLATFORM), linux)
+   ifeq ($(ARCH_DATA_MODEL), 64)
+   # XXX what about the rest of them?
+        LIBXT = -lXt
+    else
+    # Allows for builds on Debian GNU Linux, X11 is in a different place 
+       LIBXT = $(firstword $(wildcard $(OPENWIN_LIB)/libXt.a) \
+                        $(wildcard /usr/lib/libXt.a))
+       LIBSM = $(firstword $(wildcard $(OPENWIN_LIB)/libSM.a) \
+                        $(wildcard /usr/lib/libSM.a))
+       LIBICE = $(firstword $(wildcard $(OPENWIN_LIB)/libICE.a) \
+                         $(wildcard /usr/lib/libICE.a))
+       LIBXTST = $(firstword $(wildcard $(OPENWIN_LIB)/libXtst.a) \
+                         $(wildcard /usr/lib/libXtst.a))
+   endif
+endif
+
+# Use -lXmu for EditRes support
+LIBXMU_DBG	= -lXmu
+LIBXMU_OPT	=
+LIBXMU		= $(LIBXMU_$(VARIANT))
+
+ifeq ($(PLATFORM), solaris)
+OTHER_LDLIBS = -lXt -lXext $(LIBXTST) $(LIBXMU) -lX11 -lXi
+endif
+
+ifneq (,$(findstring $(PLATFORM), linux macosx))
+OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
+# XXX what is this define below? Isn't it motif-related?
+OTHER_CFLAGS += -DXMSTRINGDEFINES=1
+OTHER_LDLIBS =  $(LIBXMU) $(LIBXTST) -lXext $(LIBXT) $(LIBSM) $(LIBICE) -lX11 -lXi
+endif
+
+endif
+# !HEADLESS
+
+OTHER_LDLIBS += $(JVMLIB) $(LIBCXX) \
+                -lawt $(LIBM) $(LIBDL)
+
+#
+# Sun CC with -Xa misdefines __STDC__ to 0 (zero).
+# The following will force checking of X11 prototypes.
+# 
+ifneq ($(CC_VERSION),gcc)
+CPPFLAGS += -DFUNCPROTO=15
+endif
+
+#
+# Other extra flags needed for compiling.
+#
+CPPFLAGS += $(CUPS_CFLAGS)
+
+ifndef HEADLESS
+CPPFLAGS += -I$(OPENWIN_HOME)/include 
+LDFLAGS  += -L$(OPENWIN_LIB)
+
+endif # !HEADLESS
+
+CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/../font \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/image \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/shell \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/alphacomposite \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d \
+	    -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \
+	    -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \
+            -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \
+        -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \
+        -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \
+        -I$(PLATFORM_SRC)/native/$(PKGDIR) \
+        $(EVENT_MODEL)
+
+ifeq ($(PLATFORM), macosx)
+CPPFLAGS += -I$(CUPS_HEADERS_PATH)
+
+ifndef HEADLESS
+CPPFLAGS += -I$(MOTIF_DIR)/include \
+            -I$(OPENWIN_HOME)/include 
+LDFLAGS  += -L$(MOTIF_LIB) -L$(OPENWIN_LIB)
+
+endif # !HEADLESS
+endif # PLATFORM
+
+ifeq ($(PLATFORM), linux)
+  # Checking for the X11/extensions headers at the additional location
+  CPPFLAGS += -I$(firstword $(wildcard $(OPENWIN_HOME)/include/X11/extensions) \
+                        $(wildcard /usr/include/X11/extensions))
+endif
+
+ifeq ($(PLATFORM), macosx)
+  CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \
+              -I$(OPENWIN_HOME)/include 
+endif
+
+ifeq ($(PLATFORM), solaris)
+  CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions
+endif
+
+ifeq ($(PLATFORM), macosx)
+  CPPFLAGS += -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
+endif
+
+LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \
+	   $(AWT_RUNPATH)
+
+CLASSES.export += java.io.InputStream \
+		  java.lang.ThreadGroup
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/cmm/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,85 @@
+#
+# Copyright (c) 2006, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PRODUCT  = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+ifdef OPENJDK
+    SUBDIRS +=
+    ICCPROFILE_SRC_DIR = $(SHARE_SRC)/lib/cmm/lcms
+else # !OPENJDK
+    SUBDIRS += kcms
+    ICCPROFILE_SRC_DIR = $(CLOSED_SRC)/share/lib/cmm/kcms
+endif # OPENJDK
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+#
+# ICC Profiles used by the CMM.
+#
+#ICCPROFILE_DEST_DIR = $(LIBDIR)/cmm
+
+#iccprofiles: $(ICCPROFILE_DEST_DIR)/sRGB.pf $(ICCPROFILE_DEST_DIR)/GRAY.pf \
+#	     $(ICCPROFILE_DEST_DIR)/CIEXYZ.pf $(ICCPROFILE_DEST_DIR)/PYCC.pf \
+#	     $(ICCPROFILE_DEST_DIR)/LINEAR_RGB.pf
+
+$(ICCPROFILE_DEST_DIR)/sRGB.pf: $(ICCPROFILE_SRC_DIR)/sRGB.pf
+	$(install-file)
+	$(call chmod-file, 444)
+
+$(ICCPROFILE_DEST_DIR)/GRAY.pf: $(ICCPROFILE_SRC_DIR)/GRAY.pf
+	$(install-file)
+	$(call chmod-file, 444)
+
+$(ICCPROFILE_DEST_DIR)/CIEXYZ.pf: $(ICCPROFILE_SRC_DIR)/CIEXYZ.pf
+	$(install-file)
+	$(call chmod-file, 444)
+
+$(ICCPROFILE_DEST_DIR)/PYCC.pf: $(ICCPROFILE_SRC_DIR)/PYCC.pf
+	$(install-file)
+	$(call chmod-file, 444)
+
+$(ICCPROFILE_DEST_DIR)/LINEAR_RGB.pf: $(ICCPROFILE_SRC_DIR)/LINEAR_RGB.pf
+	$(install-file)
+	$(call chmod-file, 444)
+
+iccprofiles.clean:
+	$(RM) -r $(ICCPROFILE_DEST_DIR)
+
+
+clobber: iccprofiles.clean
+	$(SUBDIRS-loop)
+
+clean: iccprofiles.clean
+	$(SUBDIRS-loop)
+
+all build:: # iccprofiles
+	$(SUBDIRS-loop)
+
+openjdk::
+	$(MAKE) OPENJDK=true build
+
+.PHONY: iccprofiles iccprofiles.clean copy-files openjdk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/cmm/kcms/FILES_c_unix.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,134 @@
+#
+# Copyright (c) 1997, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	attrmgr.c \
+	auxpt.c \
+	calc.c \
+	calcgtbl.c \
+	calcitbl.c \
+	calcmtbl.c \
+	calcotbl.c \
+	chainsu.c \
+	chnrules.c \
+	cmpsatt.c \
+	cmpsattf.c \
+	cmyklin.c \
+	combine.c \
+	compilut.c \
+	compitbl.c \
+	compose.c \
+	compotbl.c \
+	convert1.c \
+	copy.c \
+	crc32.c \
+	dispatch.c \
+	doevalsw.c \
+	eval.c \
+	evalth13.c \
+	evalth14.c \
+	evalth1c.c \
+	evalth1g.c \
+	f4lex.c \
+	filemap.c \
+	fmtdata.c \
+	futiomem.c \
+	futiotbl.c \
+	futmft2.c \
+	fwdmono.c \
+	fwdxform.c \
+	fxnull.c \
+	invmono.c \
+	invxform.c \
+	io.c \
+	io_swab.c \
+	ioencode.c \
+	iomf.c \
+	iotable.c \
+	kcms_io.c \
+	kcpmgr.c \
+	kcpmgru.c \
+	kpfile.c \
+	kplib.c \
+	kpmd5.c \
+	lab2uvl.c \
+	lab2xyz.c \
+	lensity.c \
+	linlab.c \
+	logrgb.c \
+	loguvl.c \
+	malloc.c \
+	mat2fut.c \
+	matrix.c \
+	memory.c \
+	moncurv.c \
+	new.c \
+	outmat.c \
+	profile.c \
+	profilem.c \
+	ptchain.c \
+	pteval.c \
+	ptinvert.c \
+	ptiomem.c \
+	pttmgr.c \
+	rel2abs.c \
+	resize.c \
+	share.c \
+	solvemat.c \
+	spattpr.c \
+	spattr.c \
+	spattrio.c \
+	spcvrt.c \
+	speval.c \
+	splink.c \
+	splut.c \
+	sprofile.c \
+	sprofpr.c \
+	spsave.c \
+	spsearch.c \
+	spsys.c \
+	spsystem.c \
+	sptagio.c \
+	sptagmgr.c \
+	sputilpr.c \
+	spxf_gen.c \
+	spxfcvrt.c \
+	spxfgpr.c \
+	spxfmtag.c \
+	spxform.c \
+	spxfprv.c \
+	spxfromr.c \
+	sync.c \
+	systime.c \
+	thread.c \
+	thredmem.c \
+	ukcpmgr.c \
+	unixmem.c \
+	util.c \
+	uvl2lab.c \
+	xfers.c \
+	xyz2lab.c \
+	xyzmap.c \
+	CMM.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/cmm/kcms/FILES_c_windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,138 @@
+#
+# Copyright (c) 1997, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	attrmgr.c \
+	auxpt.c \
+	calc.c \
+	calcgtbl.c \
+	calcitbl.c \
+	calcmtbl.c \
+	calcotbl.c \
+	chainsu.c \
+	chnrules.c \
+	cmmdll.c \
+	cmpsatt.c \
+	cmpsattf.c \
+	cmyklin.c \
+	combine.c \
+	compilut.c \
+	compitbl.c \
+	compose.c \
+	compotbl.c \
+	convert1.c \
+	copy.c \
+	crc32.c \
+	dispatch.c \
+	doevalsw.c \
+	eval.c \
+	evalth13.c \
+	evalth14.c \
+	evalth1c.c \
+	evalth1g.c \
+	f4lex.c \
+	filemap.c \
+	fmtdata.c \
+	futiomem.c \
+	futiotbl.c \
+	futmft2.c \
+	fwdmono.c \
+	fwdxform.c \
+	fxnull.c \
+	invmono.c \
+	invxform.c \
+	io.c \
+	io_swab.c \
+	ioencode.c \
+	iomf.c \
+	iotable.c \
+	kcms_io.c \
+	kcpmgr.c \
+	kcpmgru.c \
+	kpfile.c \
+	kplib.c \
+	kpmd5.c \
+	lab2uvl.c \
+	lab2xyz.c \
+	lensity.c \
+	linlab.c \
+	logrgb.c \
+	loguvl.c \
+	malloc.c \
+	mat2fut.c \
+	matrix.c \
+	memory.c \
+	moncurv.c \
+	new.c \
+	outmat.c \
+	profile.c \
+	profilem.c \
+	ptchain.c \
+	pteval.c \
+	ptinvert.c \
+	ptiomem.c \
+	pttmgr.c \
+	registry.c \
+	rel2abs.c \
+	resize.c \
+	share.c \
+	solvemat.c \
+	spattpr.c \
+	spattr.c \
+	spattrio.c \
+	spcvrt.c \
+	speval.c \
+	splink.c \
+	splut.c \
+	sprofile.c \
+	sprofpr.c \
+	spsave.c \
+	spsearch.c \
+	spsys.c \
+	spsystem.c \
+	sptagio.c \
+	sptagmgr.c \
+	sputilpr.c \
+	spxf_gen.c \
+	spxfcvrt.c \
+	spxffile.c \
+	spxfgpr.c \
+	spxfmtag.c \
+	spxform.c \
+	spxfprv.c \
+	spxfromr.c \
+	sync.c \
+	sysinfo.c \
+	systime.c \
+	thread.c \
+	thredmem.c \
+	util.c \
+	uvl2lab.c \
+	winmem.c \
+	wkcpmgr.c \
+	xfers.c \
+	xyz2lab.c \
+	xyzmap.c \
+	CMM.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/cmm/kcms/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,108 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.java2d.cmm.kcms
+LIBRARY = kcms
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+ifeq ($(PLATFORM), windows)
+include FILES_c_windows.gmk
+else # PLATFORM
+include FILES_c_unix.gmk
+endif # PLATFORM
+
+FILES_java = \
+    sun/java2d/cmm/kcms/CMM.java
+
+FILES_export = \
+    sun/java2d/cmm/kcms/CMM.java 
+
+ifeq ($(PLATFORM), windows)
+  # Override the default version info with our own resource file (see 5043594)
+  VERSIONINFO_RESOURCE = $(CLOSED_SRC)/share/native/sun/java2d/cmm/kcms/cmm.rc
+endif
+
+# Rules
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+SERVICEDIR = $(CLASSBINDIR)/META-INF/services
+
+FILES_copy = \
+	$(SERVICEDIR)/sun.java2d.cmm.PCMM
+
+
+build: copy-files
+
+copy-files: $(FILES_copy)
+
+$(SERVICEDIR)/%: $(CLOSED_SRC)/share/classes/sun/java2d/cmm/kcms/META-INF/services/%
+	$(install-file)
+
+#
+# Extra rules
+#
+ifeq  ($(PLATFORM), linux)
+    LDLIBS += -lpthread
+    OTHER_CFLAGS += -Wno-missing-field-initializers
+endif
+
+clean clobber:: 
+	$(RM) $(FILES_copy)
+
+#
+# Add to ambient vpath to get files in a subdirectory
+#
+vpath %.c   $(CLOSED_SRC)/share/native/$(PKGDIR)
+
+ifeq ($(PLATFORM), windows)
+
+OTHER_LDLIBS = user32.lib version.lib
+
+clean:: res.clean
+
+res.clean:
+	$(RM) $(OBJDIR)/cmm.rc
+	$(RM) $(OBJDIR)/cmm.res
+	$(RM) $(OBJDIR)/cmm.h
+
+else # PLATFORM
+OTHER_LDLIBS = $(LIBM)
+
+# Use pic instead of PIC on this library
+GLOBAL_KPIC = $(PIC_CODE_SMALL)
+
+CPPFLAGS += -I$(CLASSHDRDIR) \
+
+endif # PLATFORM
+
+CFLAGS += -DJAVACMM -DFUT_CALC_EX -DNO_FUT_GCONST
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/cmm/kcms/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,47 @@
+#
+# Copyright (c) 1997, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetTagSize;
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetNumComponents;
+        Java_sun_java2d_cmm_kcms_CMM_cmmColorConvert;
+        Java_sun_java2d_cmm_kcms_CMM_cmmInit;
+        Java_sun_java2d_cmm_kcms_CMM_cmmCombineTransforms;
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetTagData;
+        Java_sun_java2d_cmm_kcms_CMM_cmmSetTagData;
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetProfileData;
+        Java_sun_java2d_cmm_kcms_CMM_cmmFreeProfile;
+        Java_sun_java2d_cmm_kcms_CMM_cmmTerminate;
+        Java_sun_java2d_cmm_kcms_CMM_cmmLoadProfile;
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetTransform;
+        Java_sun_java2d_cmm_kcms_CMM_cmmFreeTransform;
+        Java_sun_java2d_cmm_kcms_CMM_cmmGetProfileSize;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/dcpr/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,51 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	CJError.c \
+	doeObject.c \
+	doeSun.c \
+	dcPool.c \
+	CJPathConsumer.c \
+	CJPathConsumer2D.c \
+	dcPathConsumer.c \
+	dcPathStore.c \
+	dcPathError.c \
+	dcPathException.c \
+	PathFiller.c \
+	PathDasher.c \
+	PathStroker.c \
+	dcLLFiller.c \
+	dcLLFillerH.c \
+	dcLLFillerS.c \
+        dcPRError.c \
+        dcPRException.c \
+	dcPathFiller.c \
+	dcPathDasher.c \
+	dcPathStorage.c \
+	dcPathStroker.c \
+	affine.c \
+	angles.c \
+	arcs.c \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/dcpr/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.dc
+LIBRARY = dcpr
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+FILES_java = \
+ sun/dc/DuctusRenderingEngine.java \
+ sun/dc/path/FastPathProducer.java \
+ sun/dc/path/PathConsumer.java \
+ sun/dc/path/PathError.java \
+ sun/dc/path/PathException.java \
+ sun/dc/pr/PathDasher.java \
+ sun/dc/pr/PathFiller.java \
+ sun/dc/pr/PathStroker.java \
+ sun/dc/pr/PRError.java \
+ sun/dc/pr/PRException.java \
+ sun/dc/pr/Rasterizer.java
+
+FILES_export = \
+	sun/dc/pr/PathDasher.java \
+	sun/dc/pr/PathFiller.java \
+	sun/dc/pr/PathStroker.java
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+SERVICEDIR = $(CLASSBINDIR)/META-INF/services
+
+FILES_copy = \
+	$(SERVICEDIR)/sun.java2d.pipe.RenderingEngine
+
+build: copy-files
+
+copy-files: $(FILES_copy)
+
+$(SERVICEDIR)/%: $(SHARE_SRC)/classes/sun/dc/META-INF/services/%
+	$(install-file)
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(CLOSED_SRC)/share/native/$(PKGDIR)/doe
+vpath %.c   $(CLOSED_SRC)/share/native/$(PKGDIR)/path
+vpath %.c   $(CLOSED_SRC)/share/native/$(PKGDIR)/pr
+vpath %.c   $(CLOSED_SRC)/share/native/$(PKGDIR)/util
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/pipe
+
+ifneq ($(PLATFORM), windows)
+  OTHER_LDLIBS = $(LIBM)
+endif # PLATFORM
+
+CPPFLAGS += \
+	-I$(CLOSED_SRC)/share/native/$(PKGDIR)/doe \
+	-I$(CLOSED_SRC)/share/native/$(PKGDIR)/path \
+	-I$(CLOSED_SRC)/share/native/$(PKGDIR)/pr \
+	-I$(CLOSED_SRC)/share/native/$(PKGDIR)/util \
+	-I$(SHARE_SRC)/native/sun/java2d/pipe \
+	-I$(PLATFORM_SRC)/native/sun/java2d
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/dcpr/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 1997, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		Java_sun_dc_pr_PathDasher_beginPath;
+		Java_sun_dc_pr_PathFiller_getTileState;
+		Java_sun_dc_pr_PathStroker_setCaps;
+		Java_sun_dc_pr_PathStroker_setCorners;
+		Java_sun_dc_pr_PathFiller_writeAlpha16;
+		Java_sun_dc_pr_PathFiller_closedSubpath;
+		Java_sun_dc_pr_PathStroker_beginPath;
+		Java_sun_dc_pr_PathDasher_setDashT4;
+		Java_sun_dc_pr_PathFiller_dispose;
+		Java_sun_dc_pr_PathStroker_closedSubpath;
+		Java_sun_dc_pr_PathDasher_appendLine;
+		Java_sun_dc_pr_PathStroker_dispose;
+		Java_sun_dc_pr_PathDasher_setOutputConsumer;
+		Java_sun_dc_pr_PathStroker_reset;
+		Java_sun_dc_pr_PathFiller_beginSubpath;
+		Java_sun_dc_pr_PathFiller_writeAlpha8;
+		Java_sun_dc_pr_PathDasher_closedSubpath;
+		Java_sun_dc_pr_PathFiller_appendQuadratic;
+		Java_sun_dc_pr_PathDasher_setOutputT6;
+		Java_sun_dc_pr_PathStroker_setPenFitting;
+		Java_sun_dc_pr_PathStroker_endPath;
+		Java_sun_dc_pr_PathDasher_setDash;
+		Java_sun_dc_pr_PathFiller_nextTile;
+		Java_sun_dc_pr_PathStroker_setOutputConsumer;
+		Java_sun_dc_pr_PathFiller_setFillMode;
+		Java_sun_dc_pr_PathFiller_appendLine;
+		Java_sun_dc_pr_PathStroker_appendQuadratic;
+		Java_sun_dc_pr_PathFiller_endPath;
+		Java_sun_dc_pr_PathStroker_appendCubic;
+		Java_sun_dc_pr_PathDasher_appendCubic;
+		Java_sun_dc_pr_PathStroker_setPenDiameter;
+		Java_sun_dc_pr_PathFiller_setOutputArea;
+		Java_sun_dc_pr_PathFiller_getAlphaBox;
+		Java_sun_dc_pr_PathStroker_appendLine;
+		Java_sun_dc_pr_PathStroker_setOutputT6;
+		Java_sun_dc_pr_PathFiller_beginPath;
+		Java_sun_dc_pr_PathDasher_dispose;
+		Java_sun_dc_pr_PathDasher_reset;
+		Java_sun_dc_pr_PathFiller_reset;
+		Java_sun_dc_pr_PathDasher_endPath;
+		Java_sun_dc_pr_PathStroker_beginSubpath;
+		Java_sun_dc_pr_PathStroker_setPenT4;
+		Java_sun_dc_pr_PathDasher_appendQuadratic;
+		Java_sun_dc_pr_PathDasher_beginSubpath;
+		Java_sun_dc_pr_PathFiller_appendCubic;
+
+		Java_sun_dc_pr_PathDasher_cClassFinalize;
+		Java_sun_dc_pr_PathDasher_cClassInitialize;
+		Java_sun_dc_pr_PathDasher_cInitialize;
+		Java_sun_dc_pr_PathFiller_cClassFinalize;
+		Java_sun_dc_pr_PathFiller_cClassInitialize;
+		Java_sun_dc_pr_PathFiller_cInitialize;
+		Java_sun_dc_pr_PathStroker_cClassFinalize;
+		Java_sun_dc_pr_PathStroker_cClassInitialize;
+		Java_sun_dc_pr_PathStroker_cInitialize;
+		Java_sun_dc_pr_PathStroker_cInitialize2D;
+
+		Java_sun_dc_pr_PathDasher_getCPathConsumer;
+		Java_sun_dc_pr_PathFiller_getCPathConsumer;
+		Java_sun_dc_pr_PathStroker_getCPathConsumer;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/headless/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+HEADLESS = true
+NO_ROBOT = true
+MOTIF_VERSION = none
+MOTIF_VERSION_STRING=none
+
+PACKAGE = sun.awt
+LIBRARY = awt_headless
+PRODUCT = sun
+
+include $(BUILDDIR)/common/Defs.gmk
+
+ifdef BUILD_HEADLESS
+  include $(BUILDDIR)/sun/awt/mawt.gmk
+else
+  all build clean clobber ::
+  # do nothing case
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/headless/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,109 @@
+#
+# Copyright (c) 2001, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+
+                Java_sun_java2d_x11_X11PMBlitLoops_nativeBlit;
+		Java_sun_java2d_x11_X11PMBlitBgLoops_nativeBlitBg;
+		Java_sun_java2d_x11_X11Renderer_XFillSpans;
+		Java_sun_java2d_x11_X11Renderer_XDrawArc;
+		Java_sun_java2d_x11_X11Renderer_XDrawLine;
+		Java_sun_java2d_x11_X11Renderer_XDrawOval;
+		Java_sun_java2d_x11_X11Renderer_XDrawPoly;
+		Java_sun_java2d_x11_X11Renderer_XDrawRect;
+		Java_sun_java2d_x11_X11Renderer_XDrawRoundRect;
+                Java_sun_java2d_x11_X11Renderer_XDoPath;
+		Java_sun_java2d_x11_X11Renderer_XFillArc;
+		Java_sun_java2d_x11_X11Renderer_XFillOval;
+		Java_sun_java2d_x11_X11Renderer_XFillPoly;
+		Java_sun_java2d_x11_X11Renderer_XFillRect;
+		Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
+		Java_sun_java2d_x11_X11Renderer_devCopyArea;
+		Java_sun_java2d_x11_X11SurfaceData_initIDs;
+		Java_sun_java2d_x11_X11SurfaceData_initSurface;
+                Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+                Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+                Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+
+		Java_sun_java2d_x11_XSurfaceData_initOps;
+                Java_sun_java2d_x11_XSurfaceData_XCreateGC;
+                Java_sun_java2d_x11_XSurfaceData_XResetClip;
+                Java_sun_java2d_x11_XSurfaceData_XSetClip;
+                Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
+		Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
+		Java_sun_java2d_x11_XSurfaceData_setInvalid;
+		Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
+
+		X11SurfaceData_GetOps;
+		Java_java_awt_Font_initIDs;
+                Java_sun_font_FontConfigManager_getFontConfig;
+                Java_sun_font_FontConfigManager_getFontConfigAASettings;
+                Java_sun_font_FontConfigManager_getFontConfigVersion;
+                Java_sun_awt_X11FontManager_getFontPathNative;
+
+		Java_sun_awt_FontDescriptor_initIDs;
+		Java_sun_awt_PlatformFont_initIDs;
+
+		Java_sun_print_CUPSPrinter_initIDs;
+		Java_sun_print_CUPSPrinter_getCupsServer;
+		Java_sun_print_CUPSPrinter_getCupsPort;
+		Java_sun_print_CUPSPrinter_canConnect;	
+		Java_sun_print_CUPSPrinter_getMedia;
+		Java_sun_print_CUPSPrinter_getPageSizes;
+
+		# libfontmanager entry points
+		AWTIsHeadless;
+		AWTCountFonts;
+                AWTLoadFont;
+                AWTFreeFont;
+                AWTFontAscent;
+                AWTFontDescent;
+                AWTFontMinByte1;
+                AWTFontMaxByte1;
+                AWTFontMinCharOrByte2;
+                AWTFontMaxCharOrByte2;
+                AWTFontDefaultChar;
+                AWTFontPerChar;
+                AWTFontMaxBounds;
+                AWTFontTextExtents16;
+                AWTFreeChar;
+                AWTFontGenerateImage;
+                AWTCharAdvance;
+                AWTCharLBearing;
+                AWTCharRBearing;
+                AWTCharAscent;
+                AWTCharDescent;
+                AWTDrawGlyphList;
+                AccelGlyphCache_RemoveAllCellInfos;
+
+
+	local:
+		*;
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/headless/reorder-i586	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1 @@
+# Temporary file for headless
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/headless/reorder-sparc	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1 @@
+# Temporary file for headless
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/headless/reorder-sparcv9	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,1 @@
+# Temporary file for headless
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,50 @@
+#
+# Copyright (c) 1998, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building the generic and vis versions of medialib
+#
+
+BUILDDIR = ../..
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = generic
+
+# solaris-sparc and solaris-sparcv9 both build 'vis'
+ifeq ($(PLATFORM),solaris)
+  ifeq ($(ARCH),sparc)
+    SUBDIRS += vis
+  endif
+  ifeq ($(ARCH),sparcv9)
+    SUBDIRS += vis
+  endif
+endif
+
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/generic/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,96 @@
+#
+# Copyright (c) 1998, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+IMAGE_AFFINE_FILES = \
+	mlib_ImageAffine_NN.c \
+	mlib_ImageAffine_NN_Bit.c \
+	mlib_ImageAffine_BC_S32.c \
+	mlib_ImageAffine_BC_D64.c \
+	mlib_ImageAffine_BC_F32.c \
+	mlib_ImageAffine_BL_S32.c \
+	mlib_ImageAffine_BL_D64.c \
+	mlib_ImageAffine_BL_F32.c \
+	mlib_c_ImageAffine_NN.c \
+	mlib_c_ImageAffine_BL.c \
+	mlib_c_ImageAffine_BL_S16.c \
+	mlib_c_ImageAffine_BL_U16.c \
+	mlib_c_ImageAffine_BC.c \
+	mlib_c_ImageAffine_BC_S16.c \
+	mlib_c_ImageAffine_BC_U16.c \
+	mlib_c_ImageAffineIndex_BC.c \
+	mlib_c_ImageAffineIndex_BL.c \
+	mlib_ImageAffineEdge.c \
+	mlib_ImageScanPoly.c \
+	mlib_ImageColorTrue2Index.c \
+	mlib_ImageDivTables.c \
+	mlib_c_ImageThresh1_U8.c \
+	mlib_ImageFilters.c \
+
+IMAGE_LOOKUP_FILES = \
+	mlib_c_ImageLookUp_f.c \
+	mlib_ImageLookUp_64.c \
+	mlib_ImageLookUp_Bit.c \
+	mlib_c_ImageCopy.c \
+
+IMAGE_CONV_FILES = \
+	mlib_ImageConv_16ext.c \
+	mlib_ImageConv_u16ext.c \
+	mlib_ImageConvMxN_ext.c \
+	mlib_ImageConvMxN_Fp.c \
+	mlib_ImageConv_8ext.c \
+	mlib_c_ImageConv_f.c \
+	mlib_ImageClipping.c \
+	mlib_c_ImageConvCopyEdge.c \
+	mlib_c_ImageConvClearEdge.c \
+	mlib_ImageConv_8nw.c \
+	mlib_ImageConv_16nw.c \
+	mlib_ImageConv_u16nw.c \
+	mlib_ImageConv_32nw.c \
+	mlib_ImageConv_F32nw.c \
+	mlib_ImageConv_D64nw.c \
+	mlib_ImageConv2x2_f.c \
+	mlib_ImageConvClearEdge_Fp.c \
+	mlib_ImageConvCopyEdge_Bit.c \
+	mlib_ImageConvClearEdge_Bit.c \
+	mlib_ImageCopy_Bit.c \
+	mlib_c_ImageConvVersion.c \
+
+
+SHARE_SYS_FILES = \
+	mlib_sys.c  \
+	mlib_ImageUtils.c \
+
+
+FILES_c = \
+	mlib_ImageAffine.c \
+	mlib_ImageCreate.c \
+	mlib_c_ImageLookUp.c \
+	mlib_ImageConvMxN.c \
+	mlib_ImageConvKernelConvert.c \
+	$(IMAGE_AFFINE_FILES) \
+	$(IMAGE_LOOKUP_FILES) \
+	$(IMAGE_CONV_FILES) \
+	$(SHARE_SYS_FILES) \
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/generic/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,75 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building the generic version of medialib
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.awt.medialib
+LIBRARY = mlib_image
+PRODUCT = sun
+
+# Use highest level of optimization on this library
+OPTIMIZATION_LEVEL = HIGHEST
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Use mapfile
+#
+FILES_m = mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# set compile options for solaris 32- or 64-bit build
+#
+ifeq ($(ARCH_DATA_MODEL), 64)
+  CFLAGS += -DMLIB_OS64BIT
+endif # ARCH_DATA_MODEL
+
+ifneq ($(PLATFORM), sparc)
+      OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
+endif
+
+CPPFLAGS += \
+            -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib 
+
+OTHER_CFLAGS += -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES
+
+ifneq ($(PLATFORM), windows)
+	OTHER_LDLIBS = $(LIBM) $(LIBDL)
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/generic/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+            j2d_mlib_ImageDelete;
+            j2d_mlib_ImageCreateStruct;
+            j2d_mlib_ImageLookUp;
+            j2d_mlib_ImageCreate;
+            j2d_mlib_ImageConvMxN;
+            j2d_mlib_ImageAffine;
+            j2d_mlib_ImageConvKernelConvert;
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/vis/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,162 @@
+#
+# Copyright (c) 1998, 2003, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+REQUIRED_NATIVE_FILES = \
+	mlib_v_ImageLookUp.c \
+
+REQUIRED_SHARE_FILES = \
+	mlib_ImageCreate.c \
+	mlib_ImageAffine.c \
+	mlib_ImageConvMxN.c \
+	mlib_ImageConvKernelConvert.c \
+
+SYS_SHARE_FILES = \
+	mlib_sys.c \
+
+RADIO_SHARE_FILES = \
+	mlib_ImageLookUp_64.c \
+	mlib_ImageLookUp_Bit.c \
+	mlib_ImageColorTrue2Index.c \
+	mlib_c_ImageThresh1_U8.c \
+
+
+RADIO_NATIVE_FILES = \
+	mlib_v_ImageLookUpS16S16Func.c \
+	mlib_v_ImageLookUpS16S32Func.c \
+	mlib_v_ImageLookUpS16U16Func.c \
+	mlib_v_ImageLookUpS16U8Func.c \
+	mlib_v_ImageLookUpS32S16Func.c \
+	mlib_v_ImageLookUpS32S32Func.c \
+	mlib_v_ImageLookUpS32U16Func.c \
+	mlib_v_ImageLookUpS32U8Func.c \
+	mlib_v_ImageLookUpSIS16S16Func.c \
+	mlib_v_ImageLookUpSIS16S32Func.c \
+	mlib_v_ImageLookUpSIS16U16Func.c \
+	mlib_v_ImageLookUpSIS16U8Func.c \
+	mlib_v_ImageLookUpSIS32S16Func.c \
+	mlib_v_ImageLookUpSIS32S32Func.c \
+	mlib_v_ImageLookUpSIS32U16Func.c \
+	mlib_v_ImageLookUpSIS32U8Func.c \
+	mlib_v_ImageLookUpSIU16S16Func.c \
+	mlib_v_ImageLookUpSIU16S32Func.c \
+	mlib_v_ImageLookUpSIU16U16Func.c \
+	mlib_v_ImageLookUpSIU16U8Func.c \
+	mlib_v_ImageLookUpSIU8S16Func.c \
+	mlib_v_ImageLookUpSIU8S32Func.c \
+	mlib_v_ImageLookUpSIU8U16Func.c \
+	mlib_v_ImageLookUpSIU8U8Func.c \
+	mlib_v_ImageLookUpU16S16Func.c \
+	mlib_v_ImageLookUpU16S32Func.c \
+	mlib_v_ImageLookUpU16U16Func.c \
+	mlib_v_ImageLookUpU16U8Func.c \
+	mlib_v_ImageLookUpU8S16Func.c \
+	mlib_v_ImageLookUpU8S32Func.c \
+	mlib_v_ImageLookUpU8U16Func.c \
+	mlib_v_ImageLookUpU8U8Func.c \
+
+GEOM_NATIVE_FILES = \
+	mlib_v_ImageAffineIndex_BC.c \
+	mlib_v_ImageAffine_BC.c \
+	mlib_v_ImageAffine_BC_S16.c \
+	mlib_v_ImageAffine_BC_U16.c \
+	mlib_v_ImageAffine_BL.c \
+	mlib_v_ImageAffine_BL_S16.c \
+	mlib_v_ImageAffine_BL_U16.c \
+	mlib_v_ImageAffine_NN.c \
+	mlib_v_ImageFilters.c \
+
+GEOM_SHARE_FILES = \
+	mlib_ImageAffineEdge.c \
+	mlib_ImageAffine_BC_D64.c \
+	mlib_ImageAffine_BC_F32.c \
+	mlib_ImageAffine_BC_S32.c \
+	mlib_ImageAffine_BL_D64.c \
+	mlib_ImageAffine_BL_F32.c \
+	mlib_ImageAffine_BL_S32.c \
+	mlib_ImageAffine_NN.c \
+	mlib_ImageAffine_NN_Bit.c \
+	mlib_ImageFilters.c \
+	mlib_ImageScanPoly.c \
+
+SPATIAL_SHARED_FILES = \
+	mlib_ImageConv_8nw.c \
+	mlib_ImageConv_8ext.c \
+	mlib_ImageConv_16nw.c \
+	mlib_ImageConv_16ext.c \
+	mlib_ImageConv_u16nw.c \
+	mlib_ImageConv_u16ext.c \
+	mlib_ImageConv_32nw.c \
+	mlib_ImageConv_F32nw.c \
+	mlib_ImageConvMxN_Fp.c \
+	mlib_ImageConvMxN_ext.c \
+	mlib_ImageConv_D64nw.c \
+	mlib_ImageClipping.c \
+	mlib_ImageConvCopyEdge_Bit.c \
+	mlib_ImageConvClearEdge_Bit.c \
+	mlib_ImageConv2x2_f.c \
+	mlib_ImageConvClearEdge_Fp.c \
+
+SPATIAL_NATIVE_FILES = \
+	mlib_v_ImageConvMxN_8.c \
+	mlib_v_ImageConvClearEdge.c \
+	mlib_v_ImageConvCopyEdge.c \
+	mlib_v_ImageConvMxN_8ext.c \
+	mlib_v_ImageConvVersion.c \
+	mlib_v_ImageConv_8nw.c \
+	mlib_ImageConvCopyEdge_Fp.c \
+
+FORMAT_NATIVE_FILES = \
+	mlib_v_ImageChannelInsert_1.c \
+	mlib_v_ImageChannelExtract_43.c \
+	mlib_v_ImageChannelExtract_1.c \
+
+COPY_SHARED_FILES = \
+	mlib_ImageCopy_Bit.c \
+
+COPY_NATIVE_FILES = \
+	mlib_v_ImageCopy_f.c \
+
+COMMON_SHARED_FILES = \
+	mlib_ImageUtils.c \
+	mlib_ImageDivTables.c \
+
+NATIVE_FILES = \
+	$(REQUIRED_NATIVE_FILES) \
+
+FILES_c = \
+	$(REQUIRED_NATIVE_FILES) \
+	$(REQUIRED_SHARE_FILES) \
+	$(RADIO_SHARE_FILES) \
+	$(RADIO_NATIVE_FILES) \
+	$(GEOM_NATIVE_FILES) \
+	$(GEOM_SHARE_FILES) \
+	$(SPATIAL_SHARED_FILES) \
+	$(SPATIAL_NATIVE_FILES) \
+	$(FORMAT_NATIVE_FILES) \
+	$(SYS_SHARE_FILES) \
+	$(COPY_SHARED_FILES) \
+	$(COPY_NATIVE_FILES) \
+	$(COMMON_SHARED_FILES) \
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/image/vis/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,72 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building the VIS (solaris-only) version of medialib
+#
+BUILDDIR = ../../..
+PACKAGE = sun.awt.medialib
+LIBRARY = mlib_image_v
+PRODUCT = sun
+
+# Tell Defs.gmk we need VIS instructions
+VIS_NEEDED=true
+
+# Select highest level of optimization for this library
+OPTIMIZATION_LEVEL = HIGHEST
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Use generic mapfile
+#
+FILES_m = ../generic/mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Library.gmk
+
+vpath %.s	$(PLATFORM_SRC)/native/sun/awt/medialib
+vpath %.c	$(SHARE_SRC)/native/sun/awt/medialib
+
+#
+# set compile options for solaris 32- or 64-bit build
+#
+ASFLAGS += -P
+CFLAGS_sparcv9 = -DMLIB_OS64BIT
+INLINE = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
+
+CFLAGS += $(CFLAGS_$(ARCH)) $(INLINE) -I$(PLATFORM_SRC)/native/sun/awt/medialib -I$(SHARE_SRC)/native/sun/awt/medialib
+
+OTHER_CFLAGS += -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES
+OTHER_LDLIBS = $(LIBM) $(LIBDL)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/javazic/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,71 @@
+#
+# Copyright (c) 2000, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Makefile for building javazic utility & TimeZone resource files
+
+
+BUILDDIR = ../..
+PACKAGE = sun.javazic
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+# Time zone data file creation
+TZDATA = $(BUILDDIR)/../make/sun/javazic/tzdata/
+TZDATA_VER = `$(GREP) '^tzdata' $(TZDATA)VERSION`
+TZFILE = \
+    africa antarctica asia australasia europe northamerica \
+    pacificnew southamerica backward \
+    etcetera solar87 solar88 solar89 systemv
+JDKTZDATA = $(BUILDDIR)/../make/sun/javazic/tzdata_jdk/
+JDKTZFILES = gmt jdk11_backward
+TZFILES = \
+    $(addprefix $(TZDATA),$(TZFILE)) \
+    $(addprefix $(JDKTZDATA),$(JDKTZFILES))
+
+WORKDIR = $(TEMPDIR)/zi
+INSTALLDIR = $(LIBDIR)/zi
+MAPFILE = ZoneInfoMappings
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+# Add to the build rule
+build: $(INSTALLDIR)/$(MAPFILE)
+
+$(WORKDIR)/$(MAPFILE): $(BUILD_TOOLS) $(TZFILES)
+	$(RM) -r $(@D)
+	$(prep-target)
+	$(TOOL_JAVAZIC) -V "$(TZDATA_VER)" -d $(WORKDIR) $(TZFILES)
+	@$(java-vm-cleanup)
+
+$(INSTALLDIR)/$(MAPFILE): $(WORKDIR)/$(MAPFILE)
+	$(RM) -r $(@D)
+	$(prep-target)
+	$(CP) -r $(WORKDIR)/* $(@D)
+
+clean clobber::
+	$(RM) -r $(TEMPDIR) $(INSTALLDIR)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/jdbc/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,142 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for JDBC-ODBC Bridge Driver 
+#
+# Note - the native library for the bridge may be linked with the 
+# shared library for the ODBC driver manager.  Or dummy libraries
+# may be used to just create libJdbcOdbc.so with a dependency on
+# libodbc.so and libodbcinst.so.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.jdbc.odbc
+LIBRARY = JdbcOdbc
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+
+AUTO_FILES_JAVA_DIRS = sun/jdbc/odbc
+
+FILES_c = \
+	JdbcOdbc.c
+
+FILES_export = \
+    sun/jdbc/odbc/JdbcOdbc.java 
+
+# Use fake libraries on Solaris and Linux just so the library we create has
+#   a dependency on these two library names. (which are not part of the jdk)
+ifneq ($(PLATFORM), windows)
+  # In jdk5 and jdk6, and on Solaris 32bit, we would have required that
+  #    these two libraries exist at: $(ALT_ODBCDIR)/ISLIodbc/2.11/lib
+  #    In jdk7, we just fake them out like we did on Linux in jdk5 and jdk6.
+  #
+  # If you wanted to use the real odbc libraries, change the value of
+  #    ODBC_LIBRARY_LOCATION, and delete the variable assignments below.
+  #
+  # Tell linker to ignore missing externals when building this shared library.
+  LDFLAGS_DEFS_OPTION = -Xlinker -z -Xlinker nodefs
+  # Define a place to create the fake libraries and their names.
+  ODBC_LIBRARY_LOCATION = $(TEMPDIR)
+  ODBC_FAKE_LIBRARIES = $(ODBC_LIBRARY_LOCATION)/libodbcinst.so $(ODBC_LIBRARY_LOCATION)/libodbc.so
+  # Make sure they get created early.
+  INIT += $(ODBC_FAKE_LIBRARIES)
+endif
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# The UNIX define specifies conditional compilation for UNIX
+#
+ifeq ($(PLATFORM), windows)
+  LDLIBS += odbc32.lib odbccp32.lib
+else
+  CFLAGS += -DUNIX
+  LDFLAGS += -L$(ODBC_LIBRARY_LOCATION) -lodbcinst -lodbc
+endif
+
+#
+# The native code for the bridge uses conditional compilation to 
+# support Solaris, Win95 and Mac PPC. This is the path to the shared C files
+# (which unfortunately are in the same directory as shared Java files).
+#
+vpath %.c $(CLOSED_SHARE_SRC)/classes/sun/jdbc/odbc
+
+#
+# Rules to generate fake libraries
+#
+
+ifdef ODBC_FAKE_LIBRARIES
+$(TEMPDIR)/dummyodbc.c: 
+	@$(prep-target)
+	$(ECHO) "void dummyOdbc(void){}" >> $@
+$(TEMPDIR)/dummyodbc.o: $(TEMPDIR)/dummyodbc.c
+	@$(prep-target)
+	$(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $<
+$(ODBC_FAKE_LIBRARIES): $(TEMPDIR)/dummyodbc.o
+	@$(prep-target)
+	$(CC) $(SHARED_LIBRARY_FLAG) $(LDFLAGS_COMMON) -o $@ $< $(EXTRA_LIBS)
+clean::
+	$(RM) -f $(ODBC_FAKE_LIBRARIES)
+	$(RM) -f $(TEMPDIR)/dummyodbc.c
+	$(RM) -f $(TEMPDIR)/dummyodbc.o
+endif
+
+#
+# Files that need to be copied
+#
+SERVICEDIR = $(CLASSBINDIR)/META-INF/services
+
+FILES_copy = \
+	$(SERVICEDIR)/java.sql.Driver
+
+
+FILES_mkdirs = \
+	$(CLASSBINDIR)/META-INF \
+	$(CLASSBINDIR)/META-INF/services
+
+FILES_copydirs = \
+	$(CLASSBINDIR) \
+	$(FILES_mkdirs)
+
+build: copy-files
+
+copy-files: $(FILES_copy)
+
+$(SERVICEDIR)/%: $(CLOSED_SHARE_SRC)/classes/sun/jdbc/odbc/META-INF/services/%
+	$(install-file)
+
+clean clobber::
+	$(RM) $(FILES_copy)
+
+.PHONY: copy-files
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/jdga/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,66 @@
+#
+# Copyright (c) 1998, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+
+BUILDDIR = ../..
+PACKAGE = sun.jdga
+LIBRARY = sunwjdga
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+FILES_c = \
+	dgalock.c
+
+#
+# Add use of mapfile
+#
+ifeq ($(ARCH_FAMILY), sparc)
+FILES_m = mapfile-vers
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+endif
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)
+
+ifneq ($(PLATFORM), windows)
+  LDLIBS =  -ldga -lX11 $(LIBDL) -lc
+
+  CPPFLAGS += \
+	-I$(SHARE_SRC)/javavm/export \
+	-I$(PLATFORM_SRC)/javavm/export \
+	-I$(OPENWIN_HOME)/include 
+endif
+
+LDFLAGS += -L$(OPENWIN_LIB) -R$(OPENWIN_RUNTIME_LIB)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/jdga/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,33 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+            JDgaLibInit;	
+	local:
+	    *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/jkernel/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,94 @@
+#
+# Copyright (c) 2008, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+MODULE  = jkernel
+PACKAGE = sun.jkernel
+LIBRARY = jkernel
+PRODUCT = sun
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Use highest optimization level
+#
+_OPT = $(CC_HIGHEST_OPT)
+
+#
+# Java source files
+#
+include FILES_java.gmk
+AUTO_FILES_JAVA_DIRS = sun/jkernel
+
+LOCALE_SUFFIXES = $(JDK_LOCALES)
+
+#
+# Native source files
+#
+
+ifeq ($(ARCH_DATA_MODEL), 32) 
+
+ifeq ($(PLATFORM), windows)
+
+# If this is the VS Express compiler it will lack vc/atlmfc/
+ATL_MFC_DIR :=$(call DirExists,$(COMPILER_PATH)/../atlmfc,,)
+
+ifneq ($(ATL_MFC_DIR),)
+
+include FILES_c_windows.gmk
+
+vpath %.cpp   $(PLATFORM_SRC)/native/sun/jkernel
+
+
+VERSIONINFO_RESOURCE = $(PLATFORM_SRC)/native/sun/jkernel/kernel.rc
+
+LDLIBS += urlmon.lib wininet.lib shlwapi.lib version.lib comctl32.lib gdi32.lib -def:$(PLATFORM_SRC)/native/sun/jkernel/kernel.def
+
+include $(BUILDDIR)/common/Library.gmk
+
+endif
+
+endif
+
+endif
+
+#
+# Resources
+#
+include $(JDK_TOPDIR)/makefiles/common/internal/Resources.gmk
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+# If extra compression is going to be available in the deploy build enable 
+# its use here by defining the JRE-relative pathname of the shared library
+
+ifeq ($(PLATFORM), windows)
+  ifdef EXTRA_COMP_INSTALL_PATH
+    CPPFLAGS += -DEXTRA_COMP_INSTALL_PATH=$(EXTRA_COMP_INSTALL_PATH)
+  endif
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/lwawt/FILES_c_macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,100 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_objc = \
+        awt.m \
+        ApplicationDelegate.m \
+        CFRetainedResource.m \
+        CGLGraphicsConfig.m \
+        CGLSurfaceData.m \
+        CGLLayer.m \
+        CGraphicsConfig.m \
+        CGraphicsDevice.m \
+        CGraphicsEnv.m \
+        CCharToGlyphMapper.m \
+        CSystemColors.m \
+        AWTFont.m \
+        CGGlyphOutlines.m \
+        CGGlyphImages.m \
+        CoreTextSupport.m \
+        AWTStrike.m \
+        InitIDs.m \
+        AWTEvent.m \
+        AWTView.m \
+        AWTWindow.m \
+	AWTSurfaceLayers.m \
+        CCursorManager.m \
+        CClipboard.m \
+        CDataTransferer.m \
+        CDragSource.m \
+        CDragSourceContextPeer.m \
+        CDropTarget.m \
+        CDropTargetContextPeer.m \
+        CInputMethod.m \
+				CDesktopPeer.m \
+        OSVersion.m \
+        DnDUtilities.m \
+        CFileDialog.m \
+        CImage.m \
+        CMenu.m \
+        CMenuBar.m \
+        CMenuComponent.m \
+        CMenuItem.m \
+        CPopupMenu.m \
+        CRobot.m \
+        CTrayIcon.m \
+        CWrapper.m \
+        JavaAccessibilityAction.m \
+        JavaAccessibilityUtilities.m \
+        JavaComponentAccessibility.m \
+        JavaTextAccessibility.m \
+        LWCToolkit.m \
+        GeomUtilities.m \
+        CPrinterJob.m \
+        PrintModel.m \
+        PrinterSurfaceData.m \
+        PrinterView.m \
+        QuartzSurfaceData.m \
+        QuartzRenderer.m \
+        CTextPipe.m \
+        ImageSurfaceData.m \
+        awt_DrawingSurface.m
+
+FILES_c = \
+        OGLBlitLoops.c \
+        OGLBufImgOps.c \
+        OGLContext.c \
+        OGLFuncs.c \
+        OGLMaskBlit.c \
+        OGLMaskFill.c \
+        OGLPaints.c \
+        OGLRenderQueue.c \
+        OGLRenderer.c \
+        OGLSurfaceData.c \
+        OGLTextRenderer.c \
+        OGLVertexCache.c \
+        AccelGlyphCache.c \
+        CUPSfuncs.c
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/lwawt/FILES_export_macosx.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,279 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# FILES_export definitions for Mac OS X
+
+FILES_export = \
+        com/apple/eawt/Application.java \
+        com/apple/eawt/_AppDockIconHandler.java \
+        com/apple/eawt/_AppEventHandler.java \
+        com/apple/eawt/_AppEventLegacyHandler.java \
+        com/apple/eawt/_AppMenuBarHandler.java \
+        com/apple/eawt/_AppMiscHandlers.java \
+        com/apple/eawt/event/GestureHandler.java \
+        com/apple/eawt/FullScreenAdapter.java \
+        com/apple/eawt/FullScreenHandler.java \
+        com/apple/eawt/FullScreenListener.java \
+        com/apple/eawt/FullScreenUtilities.java \
+        sun/font/FontManager.java \
+        sun/awt/image/ImageRepresentation.java \
+        sun/awt/image/GifImageDecoder.java \
+        sun/awt/image/NativeLibLoader.java \
+        sun/java2d/CRenderer.java \
+        sun/java2d/CompositeCRenderer.java \
+        sun/java2d/DataBufferNIOInt.java \
+        sun/java2d/IntegerNIORaster.java \
+        sun/java2d/OSXSurfaceData.java \
+        sun/java2d/OSXOffScreenSurfaceData.java \
+        sun/java2d/loops/Blit.java \
+        sun/java2d/loops/BlitBg.java \
+        sun/java2d/loops/ScaledBlit.java \
+        sun/java2d/loops/TransformBlit.java \
+        sun/java2d/loops/FillRect.java \
+        sun/java2d/loops/FillSpans.java \
+        sun/java2d/loops/FillParallelogram.java \
+        sun/java2d/loops/DrawParallelogram.java \
+        sun/java2d/loops/DrawGlyphList.java \
+        sun/java2d/loops/DrawGlyphListAA.java \
+        sun/java2d/loops/DrawGlyphListLCD.java \
+        sun/java2d/loops/DrawLine.java \
+        sun/java2d/loops/DrawRect.java \
+        sun/java2d/loops/DrawPolygons.java \
+        sun/java2d/loops/DrawPath.java \
+        sun/java2d/loops/FillPath.java \
+        sun/java2d/loops/MaskBlit.java \
+        sun/java2d/loops/MaskFill.java \
+        sun/java2d/loops/TransformHelper.java \
+        sun/java2d/loops/GraphicsPrimitiveMgr.java \
+        sun/java2d/loops/GraphicsPrimitive.java \
+        sun/java2d/pipe/hw/AccelSurface.java \
+        sun/java2d/pipe/hw/AccelDeviceEventNotifier.java \
+        sun/java2d/pipe/hw/ContextCapabilities.java \
+        sun/awt/image/ImagingLib.java \
+        sun/java2d/SurfaceData.java \
+        sun/java2d/SunGraphics2D.java \
+        sun/awt/KeyboardFocusManagerPeerImpl.java \
+        sun/awt/image/BufImgSurfaceData.java \
+        sun/awt/image/DataBufferNative.java \
+        \
+        sun/awt/CGraphicsConfig.java \
+        sun/awt/CGraphicsDevice.java \
+        sun/awt/CGraphicsEnvironment.java \
+        sun/font/CCharToGlyphMapper.java \
+        sun/font/CFont.java \
+        sun/font/CFontConfiguration.java \
+        sun/font/CFontManager.java \
+        sun/font/CStrike.java \
+        sun/font/CStrikeDisposer.java \
+        sun/java2d/BackBufferCapsProvider.java \
+        sun/java2d/MacosxSurfaceManagerFactory.java \
+        sun/lwawt/LWButtonPeer.java \
+        sun/lwawt/LWCanvasPeer.java \
+        sun/lwawt/LWCheckboxPeer.java \
+        sun/lwawt/LWChoicePeer.java \
+        sun/lwawt/LWComponentPeer.java \
+        sun/lwawt/LWContainerPeer.java \
+        sun/lwawt/LWCursorManager.java \
+        sun/lwawt/LWKeyboardFocusManagerPeer.java \
+        sun/lwawt/LWLabelPeer.java \
+        sun/lwawt/LWListPeer.java \
+        sun/lwawt/LWMouseInfoPeer.java \
+        sun/lwawt/LWPanelPeer.java \
+        sun/lwawt/LWRepaintArea.java \
+        sun/lwawt/LWScrollBarPeer.java \
+        sun/lwawt/LWScrollPanePeer.java \
+        sun/lwawt/LWTextComponentPeer.java \
+        sun/lwawt/LWTextFieldPeer.java \
+        sun/lwawt/LWToolkit.java \
+        sun/lwawt/LWWindowPeer.java \
+        sun/lwawt/PlatformWindow.java \
+        sun/lwawt/SelectionClearListener.java \
+        sun/lwawt/macosx/CPrinterDevice.java \
+        sun/lwawt/macosx/CPrinterDialog.java \
+        sun/lwawt/macosx/CPrinterDialogPeer.java \
+        sun/lwawt/macosx/CPrinterGraphics.java \
+        sun/lwawt/macosx/CPrinterGraphicsConfig.java \
+        sun/lwawt/macosx/CPrinterJob.java \
+        sun/lwawt/macosx/CPrinterJobDialog.java \
+        sun/lwawt/macosx/CPrinterPageDialog.java \
+        sun/lwawt/macosx/CPrinterSurfaceData.java \
+        sun/lwawt/macosx/CTextPipe.java \
+        sun/lwawt/macosx/CDesktopPeer.java \
+        sun/java2d/CRenderer.java \
+        sun/lwawt/macosx/EventDispatchAccess.java \
+        sun/lwawt/macosx/NSPrintInfo.java \
+        sun/lwawt/macosx/CAccessibility.java \
+        sun/lwawt/macosx/CAccessible.java \
+        sun/lwawt/macosx/CFRetainedResource.java \
+        sun/lwawt/macosx/CCheckboxMenuItem.java \
+        sun/lwawt/macosx/CClipboard.java \
+        sun/lwawt/macosx/CDataTransferer.java \
+        sun/lwawt/macosx/CDragSourceContextPeer.java \
+        sun/lwawt/macosx/CMouseDragGestureRecognizer.java \
+        sun/lwawt/macosx/CDropTarget.java \
+        sun/lwawt/macosx/CDropTargetContextPeer.java \
+        sun/lwawt/macosx/CCursorManager.java \
+        sun/lwawt/macosx/CFileDialog.java \
+        sun/lwawt/macosx/CImage.java \
+        sun/lwawt/macosx/CMenu.java \
+        sun/lwawt/macosx/CMenuBar.java \
+        sun/lwawt/macosx/CMenuComponent.java \
+        sun/lwawt/macosx/CMenuItem.java \
+        sun/lwawt/macosx/CMouseInfoPeer.java \
+        sun/lwawt/macosx/CPlatformView.java \
+        sun/lwawt/macosx/CPlatformWindow.java \
+        sun/lwawt/macosx/CPlatformComponent.java \
+        sun/lwawt/macosx/CEmbeddedFrame.java \
+        sun/lwawt/macosx/CPlatformEmbeddedFrame.java \
+        sun/lwawt/macosx/CPlatformResponder.java \
+        sun/lwawt/macosx/CPopupMenu.java \
+        sun/lwawt/macosx/CRobot.java \
+        sun/lwawt/macosx/CSystemTray.java \
+        sun/lwawt/macosx/CTrayIcon.java \
+        sun/lwawt/macosx/CWrapper.java \
+        sun/lwawt/macosx/CocoaConstants.java \
+        sun/lwawt/macosx/LWCToolkit.java \
+        sun/lwawt/macosx/CInputMethod.java \
+        sun/lwawt/macosx/CInputMethodDescriptor.java \
+        sun/lwawt/macosx/event/NSEvent.java \
+        \
+        sun/awt/DebugSettings.java \
+        sun/awt/EmbeddedFrame.java \
+        sun/awt/PlatformFont.java \
+        sun/awt/FontDescriptor.java \
+        sun/awt/NativeLibLoader.java \
+        sun/awt/CharsetString.java \
+        sun/awt/SunHints.java \
+        sun/java2d/pipe/BufferedContext.java \
+        sun/java2d/pipe/BufferedMaskBlit.java \
+        sun/java2d/pipe/BufferedOpCodes.java \
+        sun/java2d/pipe/BufferedMaskBlit.java \
+        sun/java2d/pipe/BufferedPaints.java \
+        sun/java2d/pipe/BufferedRenderPipe.java \
+        sun/java2d/pipe/BufferedTextPipe.java \
+        sun/java2d/pipe/RenderBuffer.java \
+        sun/java2d/pipe/ShapeSpanIterator.java \
+        sun/java2d/pipe/SpanClipRenderer.java \
+        sun/java2d/pipe/RegionIterator.java \
+        sun/awt/image/IntegerComponentRaster.java \
+        sun/java2d/cmm/CMSManager.java \
+        sun/java2d/cmm/PCMM.java \
+        sun/java2d/cmm/ColorTransform.java \
+        sun/awt/datatransfer/DataTransferer.java \
+        sun/awt/dnd/SunDragSourceContextPeer.java \
+        sun/java2d/opengl/OGLBlitLoops.java \
+        sun/java2d/opengl/OGLContext.java \
+        sun/java2d/opengl/OGLMaskFill.java \
+        sun/java2d/opengl/OGLPaints.java \
+        sun/java2d/opengl/OGLRenderer.java \
+        sun/java2d/opengl/OGLRenderQueue.java \
+        sun/java2d/opengl/OGLSurfaceData.java \
+        sun/java2d/opengl/OGLTextRenderer.java \
+        sun/java2d/opengl/CGLGraphicsConfig.java \
+        sun/java2d/opengl/CGLSurfaceData.java \
+        sun/java2d/opengl/CGLLayer.java \
+        sun/awt/ExtendedKeyCodes.java 
+
+FILES_export2 = \
+        java/awt/AlphaComposite.java \
+        java/awt/MouseInfo.java \
+        java/awt/Cursor.java \
+        java/awt/Graphics.java \
+        java/awt/Color.java \
+        java/awt/Image.java \
+        java/awt/Rectangle.java \
+        java/awt/Event.java \
+        java/awt/Font.java \
+        java/awt/Insets.java \
+        java/awt/Point.java \
+        java/awt/FontMetrics.java \
+        java/awt/Toolkit.java \
+        java/awt/Component.java \
+        java/awt/Container.java \
+        java/awt/Canvas.java \
+        java/awt/Button.java \
+        java/awt/List.java \
+        java/awt/Adjustable.java \
+        java/awt/Scrollbar.java \
+        java/awt/ScrollPane.java \
+        java/awt/ScrollPaneAdjustable.java \
+        java/awt/Window.java \
+        java/awt/TextField.java \
+        java/awt/Label.java \
+        java/awt/Choice.java \
+        java/awt/TextArea.java \
+        java/awt/MenuBar.java \
+        java/awt/Menu.java \
+        java/awt/MenuComponent.java \
+        java/awt/PopupMenu.java \
+        java/awt/Dialog.java \
+        java/awt/FileDialog.java \
+        java/awt/MenuItem.java \
+        java/awt/Checkbox.java \
+        java/awt/CheckboxMenuItem.java \
+        java/awt/CheckboxGroup.java \
+        java/awt/Frame.java \
+        java/awt/Transparency.java \
+        java/awt/AWTException.java \
+        java/awt/AWTEvent.java \
+        java/awt/AWTKeyStroke.java \
+        java/awt/KeyboardFocusManager.java \
+        java/awt/Dimension.java \
+        java/awt/SystemColor.java \
+        java/awt/TrayIcon.java \
+        java/awt/DisplayMode.java \
+        java/awt/color/ColorSpace.java \
+        java/awt/color/ICC_Profile.java \
+        java/awt/geom/PathIterator.java \
+        java/awt/image/AffineTransformOp.java \
+        java/awt/image/ImageConsumer.java \
+        java/awt/image/ImageObserver.java \
+        java/awt/image/BufferedImage.java \
+        java/awt/image/ColorModel.java \
+        java/awt/image/ConvolveOp.java \
+        java/awt/image/DirectColorModel.java \
+        java/awt/image/IndexColorModel.java \
+        java/awt/image/DataBuffer.java \
+        java/awt/datatransfer/Transferable.java \
+        java/awt/datatransfer/DataFlavor.java \
+        java/awt/datatransfer/UnsupportedFlavorException.java \
+        java/awt/datatransfer/Clipboard.java \
+        java/awt/datatransfer/ClipboardOwner.java \
+        java/awt/datatransfer/StringSelection.java \
+        java/awt/event/AdjustmentEvent.java \
+        java/awt/event/KeyEvent.java \
+        java/awt/event/MouseEvent.java \
+        java/awt/event/MouseWheelEvent.java \
+        java/awt/event/FocusEvent.java \
+        java/awt/event/InputEvent.java \
+        java/awt/event/WindowEvent.java \
+        java/awt/event/NativeLibLoader.java \
+        java/awt/peer/ComponentPeer.java \
+        java/awt/dnd/DnDConstants.java \
+        sun/awt/CausedFocusEvent.java \
+        java/awt/print/PageFormat.java \
+        java/awt/print/Pageable.java \
+        java/awt/print/Printable.java \
+        java/awt/BasicStroke.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/lwawt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,114 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+MODULE  = awt
+PACKAGE = sun.lwawt
+LIBRARY = awt_lwawt
+PRODUCT = sun
+
+LIB_LOCATION = $(LIBDIR)
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_c_macosx.gmk
+include FILES_export_macosx.gmk
+AUTO_FILES_JAVA_DIRS = sun/awt sun/font sun/lwawt sun/lwawt/macosx sun/java2d sun/java2d/opengl com/apple/eawt
+
+#
+# Rules.
+#
+# include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(SHARE_SRC)/native/sun/awt/debug
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image/gif
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image/cvutils
+vpath %.c   $(SHARE_SRC)/native/sun/awt/shell
+vpath %.c   $(SHARE_SRC)/native/sun/java2d
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/loops
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/pipe
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/opengl
+vpath %.c   $(SHARE_SRC)/native/sun/awt/medialib
+vpath %.c   $(SHARE_SRC)/native/sun/awt/utility
+vpath %.c   $(SHARE_SRC)/native/sun/font
+vpath %.c   $(call NativeSrcDirList,,native/sun/awt)
+
+vpath %.cpp $(SHARE_SRC)/native/sun/image
+
+vpath %.m   $(call NativeSrcDirList,,native/sun/awt)
+vpath %.m   $(call NativeSrcDirList,,native/sun/font)
+vpath %.m   $(call NativeSrcDirList,,native/sun/java2d)
+vpath %.m   $(call NativeSrcDirList,,native/sun/java2d/opengl)
+
+OTHER_LDLIBS += \
+	-lawt -lmlib_image -losxapp $(JVMLIB) $(LIBM) \
+	-framework Accelerate \
+	-framework ApplicationServices \
+	-framework AudioToolbox \
+	-framework Carbon \
+	-framework Cocoa \
+	-framework Security \
+	-framework ExceptionHandling \
+	-framework JavaNativeFoundation \
+	-framework JavaRuntimeSupport \
+	-framework OpenGL \
+        -framework QuartzCore
+CPPFLAGS += \
+        -I$(CLASSHDRDIR) \
+        -I$(SHARE_SRC)/native/sun/awt/debug \
+        -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
+        -I$(SHARE_SRC)/native/sun/java2d \
+	-I$(SHARE_SRC)/native/sun/java2d/loops \
+	-I$(SHARE_SRC)/native/sun/awt/image/cvutils \
+	-I$(SHARE_SRC)/native/sun/awt/image \
+	-I$(SHARE_SRC)/native/sun/font \
+	-I$(SHARE_SRC)/native/sun/java2d/pipe \
+	-I$(SHARE_SRC)/native/sun/java2d/opengl \
+	-I$(SHARE_SRC)/native/sun/dc/path \
+	-I$(SHARE_SRC)/native/sun/dc/doe \
+	-I$(SHARE_SRC)/native/sun/awt/alphacomposite \
+        -I$(SHARE_SRC)/native/sun/awt/medialib \
+        -I$(SHARE_SRC)/native/sun/awt \
+        $(call NativeSrcDirList,-I,/native/sun/awt) \
+        $(call NativeSrcDirList,-I,/native/sun/osxapp) \
+        $(call NativeSrcDirList,-I,/native/sun/font) \
+	$(call NativeSrcDirList,-I,/native/sun/java2d) \
+	$(call NativeSrcDirList,-I,/native/sun/java2d/opengl)
+
+ifeq ($(MILESTONE), internal)
+  CPPFLAGS += -DINTERNAL_BUILD
+endif
+
+clean clobber::
+
+.PHONY:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/nio/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,38 @@
+#
+# Copyright (c) 2009, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.nio
+PRODUCT = sun
+SUBDIRS_MAKEFLAGS += JAVAC_MAX_WARNINGS=true
+SUBDIRS_MAKEFLAGS += JAVAC_WARNINGS_FATAL=true
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = cs
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/nio/cs/FILES_java.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,133 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Character converters for lib/charsets.jar
+#
+# Core character converters are built from make/java/java.
+#
+
+FILES_gen_extcs = \
+	sun/nio/cs/ext/IBM037.java \
+	sun/nio/cs/ext/IBM1006.java \
+	sun/nio/cs/ext/IBM1025.java \
+	sun/nio/cs/ext/IBM1026.java \
+	sun/nio/cs/ext/IBM1046.java \
+	sun/nio/cs/ext/IBM1047.java \
+	sun/nio/cs/ext/IBM1097.java \
+	sun/nio/cs/ext/IBM1098.java \
+	sun/nio/cs/ext/IBM1112.java \
+	sun/nio/cs/ext/IBM1122.java \
+	sun/nio/cs/ext/IBM1123.java \
+	sun/nio/cs/ext/IBM1124.java \
+	sun/nio/cs/ext/IBM1140.java \
+	sun/nio/cs/ext/IBM1141.java \
+	sun/nio/cs/ext/IBM1142.java \
+	sun/nio/cs/ext/IBM1143.java \
+	sun/nio/cs/ext/IBM1144.java \
+	sun/nio/cs/ext/IBM1145.java \
+	sun/nio/cs/ext/IBM1146.java \
+	sun/nio/cs/ext/IBM1147.java \
+	sun/nio/cs/ext/IBM1148.java \
+	sun/nio/cs/ext/IBM1149.java \
+	sun/nio/cs/ext/IBM273.java \
+	sun/nio/cs/ext/IBM277.java \
+	sun/nio/cs/ext/IBM278.java \
+	sun/nio/cs/ext/IBM280.java \
+	sun/nio/cs/ext/IBM284.java \
+	sun/nio/cs/ext/IBM285.java \
+	sun/nio/cs/ext/IBM297.java \
+	sun/nio/cs/ext/IBM420.java \
+	sun/nio/cs/ext/IBM424.java \
+	sun/nio/cs/ext/IBM500.java \
+	sun/nio/cs/ext/IBM833.java \
+	sun/nio/cs/ext/IBM838.java \
+	sun/nio/cs/ext/IBM856.java \
+	sun/nio/cs/ext/IBM860.java \
+	sun/nio/cs/ext/IBM861.java \
+	sun/nio/cs/ext/IBM863.java \
+	sun/nio/cs/ext/IBM864.java \
+	sun/nio/cs/ext/IBM865.java \
+	sun/nio/cs/ext/IBM868.java \
+	sun/nio/cs/ext/IBM869.java \
+	sun/nio/cs/ext/IBM870.java \
+	sun/nio/cs/ext/IBM871.java \
+	sun/nio/cs/ext/IBM875.java \
+	sun/nio/cs/ext/IBM918.java \
+	sun/nio/cs/ext/IBM921.java \
+	sun/nio/cs/ext/IBM922.java \
+	sun/nio/cs/ext/ISO_8859_11.java \
+	sun/nio/cs/ext/ISO_8859_3.java \
+	sun/nio/cs/ext/ISO_8859_6.java \
+	sun/nio/cs/ext/ISO_8859_8.java \
+	sun/nio/cs/ext/MS1255.java \
+	sun/nio/cs/ext/MS1256.java \
+	sun/nio/cs/ext/MS1258.java \
+	sun/nio/cs/ext/MS874.java \
+	sun/nio/cs/ext/MacArabic.java \
+	sun/nio/cs/ext/MacCentralEurope.java \
+	sun/nio/cs/ext/MacCroatian.java \
+	sun/nio/cs/ext/MacCyrillic.java \
+	sun/nio/cs/ext/MacDingbat.java \
+	sun/nio/cs/ext/MacGreek.java \
+	sun/nio/cs/ext/MacHebrew.java \
+	sun/nio/cs/ext/MacIceland.java \
+	sun/nio/cs/ext/MacRoman.java \
+	sun/nio/cs/ext/MacRomania.java \
+	sun/nio/cs/ext/MacSymbol.java \
+	sun/nio/cs/ext/MacThai.java \
+	sun/nio/cs/ext/MacTurkish.java \
+	sun/nio/cs/ext/MacUkraine.java \
+	sun/nio/cs/ext/TIS_620.java \
+        sun/nio/cs/ext/EUC_TWMapping.java \
+        sun/nio/cs/ext/HKSCSMapping.java \
+        sun/nio/cs/ext/HKSCS2001Mapping.java \
+        sun/nio/cs/ext/HKSCS_XPMapping.java \
+	sun/nio/cs/ext/IBM1364.java \
+	sun/nio/cs/ext/IBM1381.java \
+	sun/nio/cs/ext/IBM1383.java \
+	sun/nio/cs/ext/IBM930.java \
+	sun/nio/cs/ext/IBM933.java \
+	sun/nio/cs/ext/IBM935.java \
+	sun/nio/cs/ext/IBM937.java \
+	sun/nio/cs/ext/IBM939.java \
+	sun/nio/cs/ext/IBM942.java \
+	sun/nio/cs/ext/IBM943.java \
+	sun/nio/cs/ext/IBM948.java \
+	sun/nio/cs/ext/IBM949.java \
+	sun/nio/cs/ext/IBM950.java \
+	sun/nio/cs/ext/IBM970.java \
+	sun/nio/cs/ext/EUC_CN.java \
+	sun/nio/cs/ext/EUC_KR.java \
+	sun/nio/cs/ext/Johab.java \
+	sun/nio/cs/ext/MS932.java \
+	sun/nio/cs/ext/MS936.java \
+	sun/nio/cs/ext/MS949.java \
+	sun/nio/cs/ext/MS950.java \
+	sun/nio/cs/ext/GBK.java   \
+	sun/nio/cs/ext/Big5.java
+
+FILES_java = $(FILES_src) $(FILES_gen_extcs)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/nio/cs/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,140 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for character converters.
+#
+
+BUILDDIR = ../../..
+
+# charsets should be separated from nio module 
+PACKAGE = sun.nio
+PRODUCT = sun
+
+# This re-directs all the class files to a separate location
+CLASSDESTDIR = $(TEMPDIR)/classes
+
+JAVAC_MAX_WARNINGS = false
+JAVAC_LINT_OPTIONS = -Xlint:all,-deprecation
+JAVAC_WARNINGS_FATAL = true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_java.gmk
+AUTO_FILES_JAVA_DIRS = sun/nio/cs/ext
+
+# For Cygwin, command line arguments that are paths must be converted to
+# windows style paths. These paths cannot be used as targets, however, because 
+# the ":" in them  will interfere with GNU Make rules, generating "multiple
+# target pattern" errors.
+
+# this define is for the rule:
+CHARSETS_JAR = $(LIBDIR)/charsets.jar
+
+# extcs
+FILES_genout_extcs = $(FILES_gen_extcs:%.java=$(GENSRCDIR)/%.java)
+
+#
+# These sun.awt charsets use sun/nio/cs/ext charsets that only exist
+# in JDK7 charsets.jar, which causes problem when build the symbol
+# table for rt.jar in Release.gmk. They are now removed from the
+# rt.jar when building jdk/jre image (in Release.gmk), so add them
+# into charsets.jar here
+#
+ifeq ($(PLATFORM), windows)
+FILES_src += \
+	sun/awt/HKSCS.java
+else
+# Solaris/Linux
+FILES_src += \
+	sun/awt/HKSCS.java \
+	sun/awt/motif/X11GB2312.java \
+	sun/awt/motif/X11GBK.java \
+	sun/awt/motif/X11KSC5601.java
+endif # PLATFORM
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+build: $(FILES_genout_extcs) $(CHARSETS_JAR)
+
+#
+# Extra rules to build character converters.
+
+SERVICE_DESCRIPTION = java.nio.charset.spi.CharsetProvider
+SERVICE_DESCRIPTION_PATH = META-INF/services/$(SERVICE_DESCRIPTION)
+
+GENCSDATASRC = ../../../../make/tools/CharsetMapping
+GENCSSRCDIR = ../../../../make/tools/src/build/tools/charsetmapping
+GENCSEXT = $(GENSRCDIR)/sun/nio/cs/ext
+
+FILES_MAP = $(GENCSDATASRC)/sjis0213.map
+FILES_DAT = $(CLASSDESTDIR)/sun/nio/cs/ext/sjis0213.dat
+
+$(FILES_DAT): $(FILES_MAP)
+	@$(prep-target)
+	$(TOOL_CHARSETMAPPING) \
+		$(FILES_MAP) $(FILES_DAT) sjis0213
+
+
+$(FILES_genout_extcs): \
+                $(GENCSDATASRC)/SingleByte-X.java.template  \
+		$(GENCSDATASRC)/DoubleByte-X.java.template \
+		$(GENCSDATASRC)/extsbcs $(GENCSDATASRC)/dbcs
+	@$(prep-target)
+	$(RM) -r $(GENCSEXT)
+	$(MKDIR) -p $(GENCSEXT)
+	$(TOOL_CHARSETMAPPING) $(GENCSDATASRC) $(GENCSEXT) extsbcs
+	$(TOOL_CHARSETMAPPING) $(GENCSDATASRC) $(GENCSEXT) euctw \
+		$(GENCSSRCDIR)/EUC_TW.java
+	$(TOOL_CHARSETMAPPING) $(GENCSDATASRC) $(GENCSEXT) hkscs \
+		$(GENCSSRCDIR)/HKSCS.java
+	$(TOOL_CHARSETMAPPING) $(GENCSDATASRC) $(GENCSEXT) dbcs
+
+$(CLASSDESTDIR)/$(SERVICE_DESCRIPTION_PATH): \
+  $(SHARE_SRC)/classes/sun/nio/cs/ext/$(SERVICE_DESCRIPTION_PATH)
+	$(install-file)
+
+# no compression unless requested
+ifndef COMPRESS_JARS
+  CREATE_JAR_OPTS_NOMANIFEST = cf0
+else
+  CREATE_JAR_OPTS_NOMANIFEST = cf
+endif
+
+$(CHARSETS_JAR): $(FILES_class) $(CLASSDESTDIR)/$(SERVICE_DESCRIPTION_PATH) $(FILES_DAT)
+	$(BOOT_JAR_CMD) $(CREATE_JAR_OPTS_NOMANIFEST) $(CHARSETS_JAR) \
+	      -C $(CLASSDESTDIR) sun \
+	      -C $(CLASSDESTDIR) $(SERVICE_DESCRIPTION_PATH)  \
+	      $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+clean::
+	$(RM) -r $(CLASSDESTDIR)
+	$(RM) $(CHARSETS_JAR)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/org/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building Mozilla modules
+#
+
+BUILDDIR = ../..
+PRODUCT = org
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS =  mozilla
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/org/mozilla/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building Mozilla JavaScript modules
+#
+
+BUILDDIR = ../../..
+PRODUCT = org
+include $(BUILDDIR)/common/Defs.gmk
+
+SUBDIRS = javascript
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/org/mozilla/javascript/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,64 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building all of sun.org.mozilla.javascript.internal.*
+#
+
+BUILDDIR = ../../../..
+PACKAGE = sun.org.mozilla.javascript.internal
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+AUTO_FILES_JAVA_DIRS = sun/org/mozilla/javascript/internal
+
+RESOURCEDIR = \
+	$(CLASSDESTDIR)/sun/org/mozilla/javascript/internal/resources
+	
+FILES_copy = \
+	$(RESOURCEDIR)/Messages.properties \
+	$(RESOURCEDIR)/Messages_fr.properties
+
+#
+# Rules
+#
+
+include $(BUILDDIR)/common/Classes.gmk
+
+all: classes copy-files
+
+#
+# Copy resource messages file for Rhino JavaScript interpreter
+#
+
+copy-files: $(FILES_copy)
+
+$(RESOURCEDIR)/%: $(CLOSED_SRC)/share/classes/sun/org/mozilla/javascript/internal/resources/%
+	$(install-file)
+
+.PHONY: copy-files
+
+clean clobber::
+	$(RM) -rf $(CLASSDESTDIR)/sun/org/mozilla/javascript
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/osxapp/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,75 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+LIBRARY = osxapp
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+FILES_objc = \
+	NSApplicationAWT.m \
+	QueuingApplicationDelegate.m \
+	PropertiesUtilities.m \
+	ThreadUtilities.m
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.m   $(call NativeSrcDirList,,native/sun/osxapp)
+
+# TODO: perhaps not all of the below frameworks are required
+OTHER_LDLIBS += \
+	-framework Accelerate \
+	-framework ApplicationServices \
+	-framework AudioToolbox \
+	-framework Carbon \
+	-framework Cocoa \
+	-framework Security \
+	-framework ExceptionHandling \
+	-framework JavaNativeFoundation \
+	-framework JavaRuntimeSupport \
+	-framework OpenGL \
+	-framework IOSurface \
+	-framework QuartzCore
+
+CPPFLAGS += \
+        $(call NativeSrcDirList,-I,/native/sun/osxapp)
+
+
+ifeq ($(MILESTONE), internal)
+  CPPFLAGS += -DINTERNAL_BUILD
+endif
+
+clean clobber::
+
+.PHONY:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,82 @@
+#
+# Copyright (c) 1996, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Build classes for security tools:
+#
+#		* keytool
+#		* jarsigner
+#		* policytool
+#
+# Also install wrappers for all of these.
+#
+
+BUILDDIR = ../..
+SUBDIRS_MAKEFLAGS += JAVAC_MAX_WARNINGS=true
+# Can't enable -Werror since krb5/Makefile implicitly compiles 
+# javax/security/auth/kerberos/ServicePermission.java, which contains
+# a fallthrough warning.
+#SUBDIRS_MAKEFLAGS += JAVAC_WARNINGS_FATAL=true
+include $(BUILDDIR)/common/Defs.gmk
+
+# build sun/security/jgss/wrapper on non-windows platform
+JGSS_WRAPPER =
+ifneq ($(PLATFORM), windows)
+    JGSS_WRAPPER = jgss/wrapper
+endif
+
+# Build PKCS#11 on all platforms except 64-bit Windows.
+# We exclude windows-amd64 because we don't have any
+# 64-bit PKCS#11 implementations to test with on that platform.
+PKCS11 = pkcs11
+ifeq ($(ARCH_DATA_MODEL), 64)
+  ifeq ($(PLATFORM), windows)
+    PKCS11 =
+  endif
+endif
+
+# Build Microsoft CryptoAPI provider only on Windows platform.
+MSCAPI =
+ifeq ($(PLATFORM), windows)
+  MSCAPI = mscapi
+endif
+
+# Build in-tree elliptic curve crypto provider only when
+# DISABLE_INTREE_EC is not set
+INTREE_EC = ec
+ifdef DISABLE_INTREE_EC
+  INTREE_EC =
+endif
+
+SUBDIRS       = $(INTREE_EC) other util krb5
+SUBDIRS_misc  = jgss $(PKCS11) $(JGSS_WRAPPER) $(MSCAPI) smartcardio
+SUBDIRS_tools = tools
+include $(BUILDDIR)/common/Subdirs.gmk
+
+all build clean clobber::
+	$(SUBDIRS-loop)
+
+clean::
+	$(RM) -r $(CLASSBINDIR)/sun/security
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/ec/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,54 @@
+#
+# Copyright (c) 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	ec.c \
+	ec2_163.c \
+	ec2_193.c \
+	ec2_233.c \
+	ec2_aff.c \
+	ec2_mont.c \
+	ecdecode.c \
+	ecl.c \
+	ecl_curve.c \
+	ecl_gf.c \
+	ecl_mult.c \
+	ec_naf.c \
+	ecp_192.c \
+	ecp_224.c \
+	ecp_256.c \
+	ecp_384.c \
+	ecp_521.c \
+	ecp_aff.c \
+	ecp_jac.c \
+	ecp_jm.c \
+	ecp_mont.c \
+	mp_gf2m.c \
+	mpi.c \
+	mplogic.c \
+	mpmontg.c \
+	oid.c \
+	secitem.c
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/ec/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,332 @@
+#
+# Copyright (c) 2009, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building sunec.jar and sunec native library.
+#
+# This file was derived from make/com/sun/crypto/provider/Makefile.
+#
+
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Sun JDK builds
+# respectively.)
+#
+# JCE builds are very different between OpenJDK and JDK.  The OpenJDK JCE
+# jar files do not require signing, but those for JDK do.  If an unsigned
+# jar file is installed into JDK, things will break when the crypto
+# routines are called.
+#
+# This Makefile does the "real" build of the JCE files.  For OpenJDK,
+# the jar files built here are installed directly into the OpenJDK.
+#
+# For JDK, the binaries use pre-built/pre-signed binary files stored in
+# the closed workspace that are not shipped in the OpenJDK workspaces.
+# We still build the JDK files here to verify the files compile, and in
+# preparation for possible signing.  Developers working on JCE in JDK
+# must sign the JCE files before testing.  The JCE signing key is kept
+# separate from the JDK workspace to prevent its disclosure.
+#
+# SPECIAL NOTE TO JCE/JDK developers:  The source files must eventually
+# be built, signed, and then the resulting jar files MUST BE CHECKED
+# INTO THE CLOSED PART OF THE WORKSPACE*.  This separate step *MUST NOT
+# BE FORGOTTEN*, otherwise a bug fixed in the source code will not be
+# reflected in the shipped binaries.  The "release" target should be
+# used to generate the required files.
+#
+# There are a number of targets to help both JDK/OpenJDK developers.
+#
+# Main Targets (JDK/OPENJDK):
+#
+#     all/clobber/clean		The usual, plus the native libraries.
+#				    If OpenJDK, installs sunec.jar.
+#				    If JDK, installs prebuilt
+#				    sunec.jar.
+#
+#     jar			Builds/installs sunec.jar
+#				    If OpenJDK, does not sign.
+#				    If JDK, tries to sign.
+#
+# Other lesser-used Targets (JDK/OPENJDK):
+#
+#     build-jar			Builds sunec.jar
+#				    (does not sign/install)
+#
+#     install-jar		Alias for "jar" above.
+#
+# Other targets (JDK only):
+#
+#     sign			Alias for sign-jar
+#	  sign-jar		Builds/signs sunec.jar (no install)
+#
+#     release			Builds all targets in preparation
+#				for workspace integration.
+#
+#     install-prebuilt		Installs the pre-built jar files
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.ec
+PRODUCT = sun
+
+#
+# The following is for when we need to do postprocessing
+# (signing) against a read-only build.  If the OUTPUTDIR
+# isn't writable, the build currently crashes out.
+#
+ifndef OPENJDK
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+endif
+
+JAVAC_MAX_WARNINGS=false
+JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation
+JAVAC_WARNINGS_FATAL=true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Location for the newly built classfiles.
+#
+CLASSDESTDIR = $(TEMPDIR)/classes
+
+#
+# Java files
+#
+AUTO_FILES_JAVA_DIRS = $(PKGDIR)
+
+#
+# Exclude the sources that get built by ../other/Makefile
+#
+AUTO_JAVA_PRUNE = \
+    ECKeyFactory.java \
+    ECParameters.java \
+    ECPrivateKeyImpl.java \
+    ECPublicKeyImpl.java \
+    NamedCurve.java
+
+#
+# Some licensees do not get the native ECC sources, but we still need to
+# be able to build "all" for them.  Check here to see if the sources are
+# available.  If not, then skip them.
+#
+
+NATIVE_ECC_AVAILABLE := $(shell \
+    if [ -d $(SHARE_SRC)/native/$(PKGDIR)/impl ] ; then \
+	$(ECHO) true; \
+    else \
+	$(ECHO) false; \
+    fi)
+
+ifeq ($(NATIVE_ECC_AVAILABLE), true)
+
+  LIBRARY = sunec
+
+  #
+  # Java files that define native methods
+  #
+  FILES_export = \
+      $(PKGDIR)/ECDHKeyAgreement.java \
+      $(PKGDIR)/ECDSASignature.java \
+      $(PKGDIR)/ECKeyPairGenerator.java
+
+  JAVAHFLAGS += -Xbootclasspath/p:$(CLASSDESTDIR)
+
+  #
+  # C and C++ files
+  #
+  include FILES_c.gmk
+
+  FILES_cpp = ECC_JNI.cpp
+
+  CPLUSPLUSLIBRARY=true
+
+  FILES_m = mapfile-vers
+
+  #
+  # Find native code
+  #
+  vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)
+
+  vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/impl
+
+  #
+  # Find include files
+  #
+  OTHER_INCLUDES += -I$(SHARE_SRC)/native/$(PKGDIR)/impl
+
+  #
+  # Compiler flags
+  #
+  OTHER_CFLAGS += -DMP_API_COMPATIBLE -DNSS_ECC_MORE_THAN_SUITE_B
+
+  #
+  # Libraries to link
+  #
+  ifneq ($(PLATFORM), windows)
+    OTHER_LDLIBS = $(LIBCXX)
+  endif
+
+  include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+  include $(BUILDDIR)/common/Library.gmk
+
+else # NATIVE_ECC_AVAILABLE
+
+  include $(BUILDDIR)/common/Classes.gmk
+
+endif # NATIVE_ECC_AVAILABLE
+
+#
+# We use a variety of subdirectories in the $(TEMPDIR) depending on what
+# part of the build we're doing.  Both OPENJDK/JDK builds are initially
+# done in the unsigned area.  When files are signed in JDK,
+# they will be placed in the appropriate area.
+#
+UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+include $(BUILDDIR)/javax/crypto/Defs-jce.gmk
+
+#
+# Rules
+#
+
+ifdef OPENJDK
+all: build-jar install-jar
+else
+all: build-jar install-prebuilt
+	$(build-warning)
+endif
+
+
+# =====================================================
+# Build the unsigned sunec.jar file.
+#
+
+JAR_DESTFILE = $(EXTDIR)/sunec.jar
+
+#
+# Since the -C option to jar is used below, each directory entry must be
+# preceded with the appropriate directory to "cd" into.
+#
+JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+build-jar: $(UNSIGNED_DIR)/sunec.jar
+
+#
+# Build sunec.jar.
+#
+$(UNSIGNED_DIR)/sunec.jar: build
+	$(prep-target)
+	$(BOOT_JAR_CMD) cf $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+
+ifndef OPENJDK
+# =====================================================
+# Sign the provider jar file.  Not needed for OpenJDK.
+#
+
+SIGNED_DIR = $(JCE_BUILD_DIR)/signed
+
+sign: sign-jar
+
+sign-jar: $(SIGNED_DIR)/sunec.jar
+
+ifndef ALT_JCE_BUILD_DIR
+$(SIGNED_DIR)/sunec.jar: $(UNSIGNED_DIR)/sunec.jar
+else
+#
+# We have to remove the build dependency, otherwise, we'll try to rebuild it
+# which we can't do on a read-only filesystem.
+#
+$(SIGNED_DIR)/sunec.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/sunec.jar ] ; then \
+	    $(ECHO) "Couldn't find $(UNSIGNED_DIR)/sunec.jar"; \
+	    exit 1; \
+	fi
+endif
+	$(call sign-file, $(UNSIGNED_DIR)/sunec.jar)
+
+
+# =====================================================
+# Create the Release Engineering files.  Signed builds, etc.
+#
+
+release: $(SIGNED_DIR)/sunec.jar
+	$(RM) $(JCE_BUILD_DIR)/release/sunec.jar
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release
+	$(CP) $(SIGNED_DIR)/sunec.jar $(JCE_BUILD_DIR)/release
+	$(release-warning)
+
+endif # OPENJDK
+
+
+# =====================================================
+# Install routines.
+#
+
+#
+# Install sunec.jar, depending on which type is requested.
+#
+install-jar jar: $(JAR_DESTFILE)
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifdef OPENJDK
+$(JAR_DESTFILE): $(UNSIGNED_DIR)/sunec.jar
+else
+$(JAR_DESTFILE): $(SIGNED_DIR)/sunec.jar
+endif
+	$(install-file)
+
+ifndef OPENJDK
+install-prebuilt:
+	@$(ECHO) "\n>>>Installing prebuilt SunEC provider..."
+	$(RM) $(JAR_DESTFILE)
+	$(CP) $(PREBUILT_DIR)/ec/sunec.jar $(JAR_DESTFILE)
+endif
+
+
+# =====================================================
+# Support routines.
+#
+
+clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(TEMPDIR) $(JCE_BUILD_DIR)
+
+.PHONY: build-jar jar install-jar
+ifndef OPENJDK
+.PHONY: sign sign-jar release install-prebuilt
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/ec/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,37 @@
+#
+# Copyright (c) 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+        global:
+                Java_sun_security_ec_ECKeyPairGenerator_generateECKeyPair;
+                Java_sun_security_ec_ECKeyPairGenerator_getEncodedBytes;
+		Java_sun_security_ec_ECDSASignature_signDigest;
+		Java_sun_security_ec_ECDSASignature_verifySignedDigest;
+		Java_sun_security_ec_ECDHKeyAgreement_deriveKey;
+        local:
+                *;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/jgss/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,39 @@
+#
+# Copyright (c) 2000, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.jgss
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = sun/security/jgss
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/jgss/wrapper/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,29 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	NativeUtil.c \
+	NativeFunc.c \
+	GSSLibStub.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/jgss/wrapper/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,77 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../../..
+PACKAGE = sun.security.jgss.wrapper
+PRODUCT = sun
+
+LIBRARY = j2gss
+# Force name of temp directory (needed due to LIBRARY change below)
+LIBRARY_OUTPUT = j2gss
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# C and Java Files
+#
+include FILES_c.gmk
+
+AUTO_FILES_JAVA_DIRS = sun/security/jgss/wrapper
+
+#
+# Java files that define native methods
+#
+FILES_export = \
+    sun/security/jgss/wrapper/GSSLibStub.java
+
+#
+# Find native code
+#
+vpath %.c \
+  $(SHARE_SRC)/native/sun/security/jgss/wrapper \
+  $(PLATFORM_SRC)/native/sun/security/jgss/wrapper
+
+#
+# Find include files
+#
+OTHER_INCLUDES += \
+  -I$(SHARE_SRC)/native/sun/security/jgss/wrapper \
+  -I$(PLATFORM_SRC)/native/sun/security/jgss/wrapper
+
+#
+# Rules
+#
+#FILES_class = $(FILES_java:%.java=$(CLASSDESTDIR)/%.class)
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Libraries to link
+#
+ifneq ($(PLATFORM), windows)
+  OTHER_LDLIBS = $(LIBDL)
+endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/jgss/wrapper/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,63 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+		JNI_OnUnload;
+		Java_sun_security_jgss_wrapper_GSSLibStub_releaseName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_importName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_compareName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_canonicalizeName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_exportName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_displayName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_acquireCred;
+		Java_sun_security_jgss_wrapper_GSSLibStub_releaseCred;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getCredName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getCredTime;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getCredUsage;
+		Java_sun_security_jgss_wrapper_GSSLibStub_importContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_initContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_acceptContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getContextName;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getContextMech;
+		Java_sun_security_jgss_wrapper_GSSLibStub_inquireContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_deleteContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getContextTime;
+		Java_sun_security_jgss_wrapper_GSSLibStub_wrapSizeLimit;
+		Java_sun_security_jgss_wrapper_GSSLibStub_exportContext;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getMic;
+		Java_sun_security_jgss_wrapper_GSSLibStub_verifyMic;
+		Java_sun_security_jgss_wrapper_GSSLibStub_wrap;
+		Java_sun_security_jgss_wrapper_GSSLibStub_unwrap;
+		Java_sun_security_jgss_wrapper_GSSLibStub_indicateMechs;
+		Java_sun_security_jgss_wrapper_GSSLibStub_inquireNamesForMech;
+		Java_sun_security_jgss_wrapper_GSSLibStub_init;
+		Java_sun_security_jgss_wrapper_GSSLibStub_getMechPtr;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/krb5/FILES_c_windows.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,28 @@
+#
+# Copyright (c) 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	NativeCreds.c \
+	WindowsDirectory.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/krb5/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,90 @@
+#
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.krb5
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Java Files
+#
+AUTO_FILES_JAVA_DIRS = sun/security/krb5
+
+ifeq ($(PLATFORM), macosx)
+FILES_export = sun/security/krb5/Credentials.java
+FILES_c = nativeccache.c
+LIBRARY = osxkrb5
+endif # PLATFORM
+
+ifeq ($(PLATFORM), windows)
+#
+# Java files that define native methods
+#
+FILES_export = \
+	sun/security/krb5/Credentials.java \
+	sun/security/krb5/Config.java
+include FILES_c_windows.gmk
+# We need some extra libs for win32
+LIBRARY = w2k_lsa_auth
+EXTRA_LIBS += Secur32.lib netapi32.lib\
+ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
+ advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\
+ odbccp32.lib wsock32.lib
+endif # PLATFORM
+
+#
+# Find native code
+#
+ifeq ($PLATFORM), macosx)
+  vpath %.c $(call NativeSrcDirList,,native/sun/security/krb5)
+else
+  vpath %.c \
+    $(PLATFORM_SRC)/native/sun/security/krb5
+endif
+
+JGSS_NATIVE_SRC=$(PLATFORM_SRC)/native/sun/security/krb5
+JGSS_NATIVE_DIR_EXISTS := $(shell if [ -d $(JGSS_NATIVE_SRC) ] ; then echo true; else echo false; fi)
+
+#
+# Rules
+#
+ifeq ($(PLATFORM), windows)
+  ifeq ($(JGSS_NATIVE_DIR_EXISTS), true)
+    include $(BUILDDIR)/common/Library.gmk
+  endif
+else ifeq ($(PLATFORM), macosx)
+  include $(BUILDDIR)/common/Library.gmk
+else
+include $(BUILDDIR)/common/Classes.gmk
+endif # PLATFORM
+
+ifneq ($(PLATFORM), windows)
+  ifeq ($(PLATFORM), macosx)
+    OTHER_LDLIBS = $(LIBDL) -framework Kerberos
+  else
+    OTHER_LDLIBS = $(LIBDL)
+  endif
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/mscapi/FILES_cpp.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,28 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_cpp = \
+	security.cpp
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/mscapi/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,295 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building sunmscapi.jar and native libraries.
+#
+# This file was derived from make/com/sun/crypto/provider/Makefile.
+#
+
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Sun JDK builds
+# respectively.)
+#
+# JCE builds are very different between OpenJDK and JDK.  The OpenJDK JCE
+# jar files do not require signing, but those for JDK do.  If an unsigned
+# jar file is installed into JDK, things will break when the crypto
+# routines are called.
+#
+# This Makefile does the "real" build of the JCE files.  For OpenJDK,
+# the jar files built here are installed directly into the OpenJDK.
+#
+# For JDK, the binaries use pre-built/pre-signed binary files stored in
+# the closed workspace that are not shipped in the OpenJDK workspaces.
+# We still build the JDK files here to verify the files compile, and in
+# preparation for possible signing.  Developers working on JCE in JDK
+# must sign the JCE files before testing.  The JCE signing key is kept
+# separate from the JDK workspace to prevent its disclosure.
+#
+# SPECIAL NOTE TO JCE/JDK developers:  The source files must eventually
+# be built, signed, and then the resulting jar files MUST BE CHECKED
+# INTO THE CLOSED PART OF THE WORKSPACE*.  This separate step *MUST NOT
+# BE FORGOTTEN*, otherwise a bug fixed in the source code will not be
+# reflected in the shipped binaries.  The "release" target should be
+# used to generate the required files.
+#
+# There are a number of targets to help both JDK/OpenJDK developers.
+#
+# Main Targets (JDK/OPENJDK):
+#
+#     all/clobber/clean        The usual, plus the native libraries.
+#                                  If OpenJDK, installs sunmscapi.jar.
+#                                  If JDK, installs prebuilt
+#                                      sunmscapi.jar.
+#
+#     jar                      Builds/installs sunmscapi.jar
+#                                  If OpenJDK, does not sign.
+#                                  If JDK, tries to sign.
+#
+# Other lesser-used Targets (JDK/OPENJDK):
+#
+#     build-jar                Builds sunmscapi.jar
+#                                  (does not sign/install)
+#
+#     install-jar              Alias for "jar" above.
+#
+# Other targets (JDK only):
+#
+#     sign                     Alias for sign-jar
+#          sign-jar            Builds/signs sunmscapi.jar (no install)
+#
+#     release                  Builds all targets in preparation
+#                              for workspace integration.
+#
+#     install-prebuilt         Installs the pre-built jar files
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.mscapi
+LIBRARY = sunmscapi
+PRODUCT = sun
+
+#
+# The following is for when we need to do postprocessing
+# (signing/obfuscation) against a read-only build.  If the OUTPUTDIR
+# isn't writable, the build currently crashes out.
+#
+ifndef OPENJDK
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+endif
+
+include $(BUILDDIR)/common/Defs.gmk
+
+CPLUSPLUSLIBRARY=true
+
+#
+# C++ and Java Files
+#
+include FILES_cpp.gmk
+
+AUTO_FILES_JAVA_DIRS = sun/security/mscapi
+
+#
+# Java files that define native methods
+#
+FILES_export = \
+    sun/security/mscapi/KeyStore.java \
+    sun/security/mscapi/Key.java \
+    sun/security/mscapi/PRNG.java \
+    sun/security/mscapi/RSACipher.java \
+    sun/security/mscapi/RSAPublicKey.java \
+    sun/security/mscapi/RSASignature.java \
+    sun/security/mscapi/RSAKeyPairGenerator.java
+
+#
+# Find native code
+#
+vpath %.cpp \
+  $(PLATFORM_SRC)/native/sun/security/mscapi
+
+#
+# Find include files
+#
+OTHER_INCLUDES += \
+  -I$(PLATFORM_SRC)/native/sun/security/mscapi
+
+#
+# Rules
+#
+CLASSDESTDIR = $(TEMPDIR)/classes
+JAVAHFLAGS += -Xbootclasspath/p:$(CLASSDESTDIR)
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Libraries to link
+#
+ifeq ($(PLATFORM), windows)
+  OTHER_LDLIBS += Crypt32.Lib
+endif
+
+#
+# We use a variety of subdirectories in the $(TEMPDIR) depending on what
+# part of the build we're doing.  Both OPENJDK/JDK builds are initially
+# done in the unsigned area.  When files are signed in JDK,
+# they will be placed in the appropriate area.
+#
+UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+#
+# Rules
+#
+
+ifdef OPENJDK
+all: build-jar install-jar
+else
+all: build-jar install-prebuilt
+	$(build-warning)
+endif
+
+include $(BUILDDIR)/javax/crypto/Defs-jce.gmk
+
+
+# =====================================================
+# Build the unsigned sunmscapi.jar file.
+#
+
+JAR_DESTFILE = $(EXTDIR)/sunmscapi.jar
+
+#
+# The sunmscapi.jar needs to be in the extension class directory,
+# therefore none of its classes can appear in $(CLASSBINDIR).
+# Currently no one is using any of the MSCAPI internals, so these files
+# should not have been built.
+#
+
+#
+# Since the -C option to jar is used below, each directory entry must be
+# preceded with the appropriate directory to "cd" into.
+#
+JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+build-jar: $(UNSIGNED_DIR)/sunmscapi.jar
+
+#
+# Build sunmscapi.jar.
+#
+$(UNSIGNED_DIR)/sunmscapi.jar: build
+	$(prep-target)
+	$(BOOT_JAR_CMD) cf $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+
+ifndef OPENJDK
+# =====================================================
+# Sign the provider jar file.  Not needed for OpenJDK.
+#
+
+SIGNED_DIR = $(JCE_BUILD_DIR)/signed
+
+sign: sign-jar
+
+sign-jar: $(SIGNED_DIR)/sunmscapi.jar
+
+ifndef ALT_JCE_BUILD_DIR
+$(SIGNED_DIR)/sunmscapi.jar: $(UNSIGNED_DIR)/sunmscapi.jar
+else
+#
+# We have to remove the build dependency, otherwise, we'll try to rebuild it
+# which we can't do on a read-only filesystem.
+#
+$(SIGNED_DIR)/sunmscapi.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/sunmscapi.jar ] ; then \
+	    $(ECHO) "Couldn't find $(UNSIGNED_DIR)/sunmscapi.jar"; \
+	    exit 1; \
+	fi
+endif
+	$(call sign-file, $(UNSIGNED_DIR)/sunmscapi.jar)
+
+
+# =====================================================
+# Create the Release Engineering files.  Signed builds, etc.
+#
+
+release: $(SIGNED_DIR)/sunmscapi.jar
+	$(RM) $(JCE_BUILD_DIR)/release/sunmscapi.jar
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release
+	$(CP) $(SIGNED_DIR)/sunmscapi.jar $(JCE_BUILD_DIR)/release
+	$(release-warning)
+
+endif # OPENJDK
+
+
+# =====================================================
+# Install routines.
+#
+
+#
+# Install sunmscapi.jar, depending on which type is requested.
+#
+install-jar jar: $(JAR_DESTFILE)
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifdef OPENJDK
+$(JAR_DESTFILE): $(UNSIGNED_DIR)/sunmscapi.jar
+else
+$(JAR_DESTFILE): $(SIGNED_DIR)/sunmscapi.jar
+endif
+	$(install-file)
+
+ifndef OPENJDK
+install-prebuilt:
+	@$(ECHO) "\n>>>Installing prebuilt SunMSCAPI provider..."
+	$(RM) $(JAR_DESTFILE)
+	$(CP) $(PREBUILT_DIR)/mscapi/sunmscapi.jar $(JAR_DESTFILE)
+endif
+
+
+# =====================================================
+# Support routines.
+#
+
+clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(TEMPDIR) $(JCE_BUILD_DIR)
+
+.PHONY: build-jar jar install-jar
+ifndef OPENJDK
+.PHONY: sign sign-jar release install-prebuilt
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/other/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,65 @@
+#
+# Copyright (c) 1996, 2009, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.other
+PRODUCT = sun
+JAVAC_MAX_WARNINGS=true
+JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation
+JAVAC_WARNINGS_FATAL=true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = \
+    sun/security/acl \
+    sun/security/jca \
+    sun/security/pkcs \
+    sun/security/pkcs10 \
+    sun/security/pkcs12 \
+    sun/security/provider \
+    sun/security/rsa \
+    sun/security/ssl \
+    sun/security/ssl/krb5 \
+    sun/security/timestamp \
+    sun/security/validator \
+    sun/security/x509 \
+    com/sun/net/ssl/internal/ssl
+
+#
+# EC classes used by the packages above
+#
+FILES_java += \
+    sun/security/ec/ECKeyFactory.java \
+    sun/security/ec/ECParameters.java \
+    sun/security/ec/ECPrivateKeyImpl.java \
+    sun/security/ec/ECPublicKeyImpl.java \
+    sun/security/ec/NamedCurve.java
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/pkcs11/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,41 @@
+#
+# Copyright (c) 2003, 2007, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	j2secmod.c \
+	j2secmod_md.c \
+	p11_convert.c \
+	p11_crypt.c \
+	p11_digest.c \
+	p11_dual.c \
+	p11_general.c \
+	p11_keymgmt.c \
+	p11_mutex.c \
+	p11_objmgmt.c \
+	p11_sessmgmt.c \
+	p11_sign.c \
+	p11_util.c \
+	p11_md.c
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/pkcs11/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,312 @@
+#
+# Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# Makefile for building sunpkcs11.jar and native libraries.
+#
+# This file was derived from make/com/sun/crypto/provider/Makefile.
+#
+
+#
+# (The terms "OpenJDK" and "JDK" below refer to OpenJDK and Sun JDK builds
+# respectively.)
+#
+# JCE builds are very different between OpenJDK and JDK.  The OpenJDK JCE
+# jar files do not require signing, but those for JDK do.  If an unsigned
+# jar file is installed into JDK, things will break when the crypto
+# routines are called.
+#
+# This Makefile does the "real" build of the JCE files.  For OpenJDK,
+# the jar files built here are installed directly into the OpenJDK.
+#
+# For JDK, the binaries use pre-built/pre-signed binary files stored in
+# the closed workspace that are not shipped in the OpenJDK workspaces.
+# We still build the JDK files here to verify the files compile, and in
+# preparation for possible signing.  Developers working on JCE in JDK
+# must sign the JCE files before testing.  The JCE signing key is kept
+# separate from the JDK workspace to prevent its disclosure.
+#
+# SPECIAL NOTE TO JCE/JDK developers:  The source files must eventually
+# be built, signed, and then the resulting jar files MUST BE CHECKED
+# INTO THE CLOSED PART OF THE WORKSPACE*.  This separate step *MUST NOT
+# BE FORGOTTEN*, otherwise a bug fixed in the source code will not be
+# reflected in the shipped binaries.  The "release" target should be
+# used to generate the required files.
+#
+# There are a number of targets to help both JDK/OpenJDK developers.
+#
+# Main Targets (JDK/OPENJDK):
+#
+#     all/clobber/clean        The usual, plus the native libraries.
+#                                  If OpenJDK, installs sunpkcs11.jar.
+#                                  If JDK, installs prebuilt
+#                                      sunpkcs11.jar.
+#
+#     jar                      Builds/installs sunpkcs11.jar
+#                                  If OpenJDK, does not sign.
+#                                  If JDK, tries to sign.
+#
+# Other lesser-used Targets (JDK/OPENJDK):
+#
+#     build-jar                Builds sunpkcs11.jar
+#                                  (does not sign/install)
+#
+#     install-jar              Alias for "jar" above.
+#
+# Other targets (JDK only):
+#
+#     sign                     Alias for sign-jar
+#          sign-jar            Builds/signs sunpkcs11.jar (no install)
+#
+#     release                  Builds all targets in preparation
+#                              for workspace integration.
+#
+#     install-prebuilt         Installs the pre-built jar files
+#
+# This makefile was written to support parallel target execution.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.pkcs11
+LIBRARY = j2pkcs11
+PRODUCT = sun
+
+#
+# The following is for when we need to do postprocessing
+# (signing/obfuscation) against a read-only build.  If the OUTPUTDIR
+# isn't writable, the build currently crashes out.
+#
+ifndef OPENJDK
+  ifdef ALT_JCE_BUILD_DIR
+    # =====================================================
+    # Where to place the output, in case we're building from a read-only
+    # build area.  (e.g. a release engineering build.)
+    JCE_BUILD_DIR=${ALT_JCE_BUILD_DIR}
+    IGNORE_WRITABLE_OUTPUTDIR_TEST=true
+  else
+    JCE_BUILD_DIR=${TEMPDIR}
+  endif
+endif
+
+JAVAC_MAX_WARNINGS=false
+JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation
+JAVAC_WARNINGS_FATAL=true
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# C and Java Files
+#
+include FILES_c.gmk
+
+#
+# Subdirectories of these are automatically included.
+#
+AUTO_FILES_JAVA_DIRS = sun/security/pkcs11
+
+#
+# Java files that define native methods
+#
+FILES_export = \
+    sun/security/pkcs11/wrapper/PKCS11.java \
+    sun/security/pkcs11/Secmod.java
+
+#
+# Find native code
+#
+vpath %.c \
+  $(SHARE_SRC)/native/sun/security/pkcs11/wrapper \
+  $(PLATFORM_SRC)/native/sun/security/pkcs11/wrapper \
+
+#
+# Find include files
+#
+OTHER_INCLUDES += \
+  -I$(SHARE_SRC)/native/sun/security/pkcs11/wrapper \
+  -I$(PLATFORM_SRC)/native/sun/security/pkcs11/wrapper
+
+#
+# Rules
+#
+CLASSDESTDIR = $(TEMPDIR)/classes
+JAVAHFLAGS = -bootclasspath "$(CLASSDESTDIR)$(CLASSPATH_SEPARATOR)$(CLASSBINDIR)"
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Libraries to link
+#
+ifneq ($(PLATFORM), windows)
+  OTHER_LDLIBS = $(LIBDL)
+endif
+
+# Other config files
+SUNPKCS11_CFG   =
+
+ifeq ($(PLATFORM), solaris)
+#SUNPKCS11_CFG   = sunpkcs11-cfg
+endif # PLATFORM
+
+SUNPKCS11_CFG_SRC   = $(TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg
+SUNPKCS11_CFG_BUILD = $(LIBDIR)/security/sunpkcs11-solaris.cfg
+
+#
+# We use a variety of subdirectories in the $(TEMPDIR) depending on what
+# part of the build we're doing.  Both OPENJDK/JDK builds are initially
+# done in the unsigned area.  When files are signed in JDK,
+# they will be placed in the appropriate area.
+#
+UNSIGNED_DIR = $(TEMPDIR)/unsigned
+
+#
+# Rules
+#
+
+ifdef OPENJDK
+all: $(SUNPKCS11_CFG) build-jar install-jar
+else
+all: $(SUNPKCS11_CFG) build-jar install-prebuilt
+	$(build-warning)
+endif
+
+sunpkcs11-cfg: $(SUNPKCS11_CFG_BUILD)
+
+$(SUNPKCS11_CFG_BUILD): $(SUNPKCS11_CFG_SRC)
+	$(install-file)
+
+include $(BUILDDIR)/javax/crypto/Defs-jce.gmk
+
+
+# =====================================================
+# Build the unsigned sunpkcs11.jar file.
+#
+
+JAR_DESTFILE = $(EXTDIR)/sunpkcs11.jar
+
+#
+# The sunpkcs11.jar needs to be in the extension class directory,
+# therefore none of its classes can appear in $(CLASSBINDIR). 
+# Currently no one is using any of the PKCS11 internals, so these files
+# should not have been built.
+#
+
+#
+# Since the -C option to jar is used below, each directory entry must be
+# preceded with the appropriate directory to "cd" into.
+#
+JAR_DIRS = $(patsubst %, -C $(CLASSDESTDIR) %, $(AUTO_FILES_JAVA_DIRS))
+
+build-jar: $(UNSIGNED_DIR)/sunpkcs11.jar
+
+#
+# Build sunpkcs11.jar.
+#
+$(UNSIGNED_DIR)/sunpkcs11.jar: build
+	$(prep-target)
+	$(BOOT_JAR_CMD) cf $@ $(JAR_DIRS) \
+	    $(BOOT_JAR_JFLAGS)
+	@$(java-vm-cleanup)
+
+
+ifndef OPENJDK
+# =====================================================
+# Sign the provider jar file.  Not needed for OpenJDK.
+#
+
+SIGNED_DIR = $(JCE_BUILD_DIR)/signed
+
+sign: sign-jar
+
+sign-jar: $(SIGNED_DIR)/sunpkcs11.jar
+
+ifndef ALT_JCE_BUILD_DIR
+$(SIGNED_DIR)/sunpkcs11.jar: $(UNSIGNED_DIR)/sunpkcs11.jar
+else
+#
+# We have to remove the build dependency, otherwise, we'll try to rebuild it
+# which we can't do on a read-only filesystem.
+#
+$(SIGNED_DIR)/sunpkcs11.jar:
+	@if [ ! -r $(UNSIGNED_DIR)/sunpkcs11.jar ] ; then \
+            $(ECHO) "Couldn't find $(UNSIGNED_DIR)/sunpkcs11.jar"; \
+            exit 1; \
+        fi
+endif
+	$(call sign-file, $(UNSIGNED_DIR)/sunpkcs11.jar)
+
+
+# =====================================================
+# Create the Release Engineering files.  Signed builds, etc.
+#
+
+release: $(SIGNED_DIR)/sunpkcs11.jar
+	$(RM) $(JCE_BUILD_DIR)/release/sunpkcs11.jar
+	$(MKDIR) -p $(JCE_BUILD_DIR)/release
+	$(CP) $(SIGNED_DIR)/sunpkcs11.jar $(JCE_BUILD_DIR)/release
+	$(release-warning)
+
+endif # OPENJDK
+
+
+# =====================================================
+# Install routines.
+#
+
+#
+# Install sunpkcs11.jar, depending on which type is requested.
+#
+install-jar jar: $(JAR_DESTFILE)
+ifndef OPENJDK
+	$(release-warning)
+endif
+
+ifdef OPENJDK
+$(JAR_DESTFILE): $(UNSIGNED_DIR)/sunpkcs11.jar
+else
+$(JAR_DESTFILE): $(SIGNED_DIR)/sunpkcs11.jar
+endif
+	$(install-file)
+
+ifndef OPENJDK
+install-prebuilt:
+	@$(ECHO) "\n>>>Installing prebuilt SunPKCS11 provider..."
+	$(RM) $(JAR_DESTFILE)
+	$(CP) $(PREBUILT_DIR)/pkcs11/sunpkcs11.jar $(JAR_DESTFILE)
+endif
+
+
+# =====================================================
+# Support routines.
+#
+
+clobber clean::
+	$(RM) -r $(JAR_DESTFILE) $(TEMPDIR) $(JCE_BUILD_DIR)
+	$(RM) $(SUNPKCS11_CFG_BUILD) 
+
+.PHONY: build-jar jar install-jar
+ifndef OPENJDK
+.PHONY: sign sign-jar release install-prebuilt
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/pkcs11/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,110 @@
+#
+# Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+		Java_sun_security_pkcs11_wrapper_PKCS11_initializeLibrary;
+		Java_sun_security_pkcs11_wrapper_PKCS11_finalizeLibrary;
+		Java_sun_security_pkcs11_wrapper_PKCS11_connect;
+		Java_sun_security_pkcs11_wrapper_PKCS11_disconnect;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Initialize;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Finalize;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetInfo;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetSlotList;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetSlotInfo;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetTokenInfo;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetMechanismList;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetMechanismInfo;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1InitToken;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1InitPIN;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SetPIN;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1OpenSession;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1CloseSession;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1CloseAllSessions;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetSessionInfo;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetOperationState;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SetOperationState;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Login;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Logout;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1CreateObject;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1CopyObject;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DestroyObject;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetObjectSize;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetAttributeValue;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SetAttributeValue;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1FindObjectsInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1FindObjects;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1FindObjectsFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1EncryptInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Encrypt;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1EncryptUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1EncryptFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DecryptInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Decrypt;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DecryptUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DecryptFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestSingle;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestKey;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Sign;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignRecoverInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignRecover;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1VerifyInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1Verify;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1VerifyUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1VerifyFinal;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1VerifyRecoverInit;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1VerifyRecover;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DigestEncryptUpdate;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DecryptDigestUpdate;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SignEncryptUpdate;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DecryptVerifyUpdate;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GenerateKey;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GenerateKeyPair;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1WrapKey;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1UnwrapKey;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1DeriveKey;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1SeedRandom;
+		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GenerateRandom;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1GetFunctionStatus;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1CancelFunction;
+#		Java_sun_security_pkcs11_wrapper_PKCS11_C_1WaitForSlotEvent;
+		Java_sun_security_pkcs11_Secmod_nssGetLibraryHandle;
+		Java_sun_security_pkcs11_Secmod_nssLoadLibrary;
+		Java_sun_security_pkcs11_Secmod_nssVersionCheck;
+		Java_sun_security_pkcs11_Secmod_nssInit;
+		Java_sun_security_pkcs11_Secmod_nssGetModuleList;
+
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/smartcardio/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,28 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	pcsc.c \
+	pcsc_md.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/smartcardio/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,80 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.smartcardio
+LIBRARY = j2pcsc
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# C and Java Files
+#
+include FILES_c.gmk
+
+AUTO_FILES_JAVA_DIRS = sun/security/smartcardio
+
+#
+# Java files that define native methods
+#
+FILES_export = \
+    sun/security/smartcardio/PCSC.java \
+    sun/security/smartcardio/PlatformPCSC.java
+
+#
+# Find native code
+#
+vpath %.c \
+  $(SHARE_SRC)/native/sun/security/smartcardio \
+  $(PLATFORM_SRC)/native/sun/security/smartcardio
+
+#
+# Find include files
+#
+OTHER_INCLUDES += \
+  -I$(SHARE_SRC)/native/sun/security/smartcardio \
+  -I$(PLATFORM_SRC)/native/sun/security/smartcardio \
+  -I$(PLATFORM_SRC)/native/sun/security/smartcardio/MUSCLE
+
+#
+# Rules
+#
+#CLASSDESTDIR = $(TMPDIR)/classes
+
+#FILES_class = $(FILES_java:%.java=$(CLASSDESTDIR)/%.class)
+
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Libraries to link
+#
+ifeq ($(PLATFORM), windows)
+  OTHER_LDLIBS = winscard.lib
+else
+  OTHER_LDLIBS = $(LIBDL)
+  OTHER_CFLAGS = -D__sun_jdk
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/smartcardio/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,45 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		JNI_OnLoad;
+		Java_sun_security_smartcardio_PlatformPCSC_initialize;
+		Java_sun_security_smartcardio_PCSC_SCardEstablishContext;
+		Java_sun_security_smartcardio_PCSC_SCardListReaders;
+		Java_sun_security_smartcardio_PCSC_SCardConnect;
+		Java_sun_security_smartcardio_PCSC_SCardTransmit;
+		Java_sun_security_smartcardio_PCSC_SCardStatus;
+		Java_sun_security_smartcardio_PCSC_SCardDisconnect;
+		Java_sun_security_smartcardio_PCSC_SCardGetStatusChange;
+		Java_sun_security_smartcardio_PCSC_SCardBeginTransaction;
+		Java_sun_security_smartcardio_PCSC_SCardEndTransaction;
+		Java_sun_security_smartcardio_PCSC_SCardControl;
+		
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/tools/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,52 @@
+#
+# Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.tools
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = sun/security/tools
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jdk
+RESOURCE_BUNDLES_JAVA = sun/security/tools/JarSignerResources.java
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
+build:
+#	$(call make-launcher, keytool, sun.security.tools.KeyTool, , )
+#ifndef BUILD_HEADLESS_ONLY
+#	$(call make-launcher, policytool, sun.security.tools.policytool.PolicyTool, , )
+#endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/security/util/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,46 @@
+#
+# Copyright (c) 1996, 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../../..
+PACKAGE = sun.security.util
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = sun/security/util
+
+#
+# Resources
+#
+LOCALE_SET_DEFINITION = jre
+RESOURCE_BUNDLES_JAVA = sun/security/util/Resources.java
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/splashscreen/FILES_c.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,114 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+FILES_c = \
+	java_awt_SplashScreen.c \
+	splashscreen_gfx_impl.c \
+	splashscreen_gif.c \
+	splashscreen_impl.c \
+	splashscreen_jpeg.c \
+	splashscreen_png.c \
+	splashscreen_sys.c \
+	png.c \
+	pngerror.c \
+	pngget.c \
+	pngmem.c  \
+	pngpread.c \
+	pngread.c \
+	pngrio.c \
+	pngrtran.c \
+	pngrutil.c \
+	pngset.c \
+	pngtrans.c \
+	pngwio.c \
+	pngwrite.c \
+	pngwtran.c \
+	pngwutil.c \
+	dgif_lib.c \
+	gif_err.c \
+	gifalloc.c \
+	jcomapi.c \
+	jdapimin.c \
+	jdapistd.c \
+	jdcoefct.c \
+	jdcolor.c \
+	jddctmgr.c \
+	jdhuff.c \
+	jdinput.c \
+	jdmainct.c \
+	jdmarker.c \
+	jdmaster.c \
+	jdmerge.c \
+	jdphuff.c \
+	jdpostct.c \
+	jdsample.c \
+	jerror.c \
+	jidctflt.c \
+	jidctfst.c \
+	jidctint.c \
+	jidctred.c \
+	jmemmgr.c \
+	jmemnobs.c \
+	jquant1.c \
+	jquant2.c \
+	jutils.c \
+	jcapimin.c \
+	jcapistd.c \
+	jccoefct.c \
+	jccolor.c \
+	jcdctmgr.c \
+	jchuff.c \
+	jcinit.c \
+	jcmainct.c \
+	jcmarker.c \
+	jcmaster.c \
+	jcparam.c \
+	jcphuff.c \
+	jcprepct.c \
+	jcsample.c \
+	jctrans.c \
+	jdtrans.c \
+	jfdctflt.c \
+	jfdctfst.c \
+	jfdctint.c
+
+ifneq ($(SYSTEM_ZLIB),true)
+  FILES_c += \
+	compress.c \
+	deflate.c \
+	gzclose.c \
+	gzlib.c \
+	gzread.c \
+	gzwrite.c \
+	infback.c \
+	inffast.c \
+	inflate.c \
+	inftrees.c \
+	trees.c \
+	uncompr.c \
+	zadler32.c \
+	zcrc32.c \
+	zutil.c
+endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/splashscreen/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,134 @@
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.awt
+LIBRARY = splashscreen
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_c.gmk
+
+FILES_java = \
+    java/awt/SplashScreen.java
+
+FILES_export = \
+    java/awt/SplashScreen.java
+
+
+#
+# Rules
+#
+# FIXME!!!!
+#ifeq ($(PLATFORM), solaris)
+#  ifneq ($(ARCH), amd64)
+#    FILES_reorder += reorder-$(ARCH)
+#  endif
+#endif
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+JAVALIB=
+
+#
+# C Flags
+#
+
+CFLAGS += -DSPLASHSCREEN
+
+ifeq ($(PLATFORM), macosx)
+  CFLAGS += -DWITH_MACOSX
+
+  # CFLAGS and CPPFLAGS are added when linking as well, so we use VARIANT
+  # instead to specify that we're actually compiling objective-c code here
+  CFLAGS_$(VARIANT)/java_awt_SplashScreen.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_gfx_impl.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_gif.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_impl.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_jpeg.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_png.o = -x objective-c
+  CFLAGS_$(VARIANT)/splashscreen_sys.o = -x objective-c
+
+  OTHER_CFLAGS += -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks
+  CPPFLAGS += -I/System/Library/Frameworks/AppKit.framework/Versions/C/Headers
+  OTHER_LDLIBS += $(LIBM) -lpthread -liconv -losxapp \
+				  -framework ApplicationServices \
+				  -framework Foundation \
+				  -framework Cocoa \
+				  -framework JavaNativeFoundation
+else ifneq ($(PLATFORM), windows)
+  CFLAGS += -DWITH_X11
+  ifeq ($(PLATFORM), macosx)
+    OTHER_LDLIBS += -liconv
+    CPPFLAGS += -I$(OPENWIN_HOME)/include \
+                -I$(OPENWIN_HOME)/include/X11/extensions
+    OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11 -lXext $(LIBM) -pthread
+  else
+    CPPFLAGS += -I$(OPENWIN_HOME)/include -I$(OPENWIN_HOME)/include/X11/extensions
+    OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11 -lXext $(LIBM) -lpthread
+  endif
+else # PLATFORM
+  CFLAGS += -DWITH_WIN32
+  OTHER_LDLIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib /DELAYLOAD:user32.dll
+#$(JVMLIB) $(OBJDIR)/../../jpeg/$(OBJDIRNAME)/jpeg$(SUFFIX).lib
+endif # PLATFORM
+
+#
+# Add to ambient vpath to get files in a subdirectory
+#
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/splashscreen
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/giflib
+ifneq ($(SYSTEM_ZLIB),true)
+  vpath %.c   $(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+endif
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/libpng
+vpath %.c   $(SHARE_SRC)/native/$(PKGDIR)/image/jpeg
+ifneq ($(PLATFORM), macosx)
+  vpath %.c   $(PLATFORM_SRC)/native/$(PKGDIR)/splashscreen
+else
+  vpath %.m   $(call NativeSrcDirList,,native/$(PKGDIR)/splashscreen)
+endif
+
+ifneq ($(PLATFORM), macosx)
+  CPPFLAGS += -I$(PLATFORM_SRC)/native/$(PKGDIR)/splashscreen
+else
+  CPPFLAGS += $(call NativeSrcDirList,-I,native/$(PKGDIR)/splashscreen)
+  CPPFLAGS += $(call NativeSrcDirList,-I,/native/sun/osxapp)
+endif
+CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/splashscreen
+CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/image/jpeg
+ifneq ($(SYSTEM_ZLIB),true)
+  CPPFLAGS += -I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+else
+  OTHER_LDLIBS += -lz
+endif
+
+# Shun the less than portable MMX assembly code in pnggccrd.c,
+# and use alternative implementations in C.
+CPPFLAGS += -DPNG_NO_MMX_CODE
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/splashscreen/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,46 @@
+#
+# Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+	global:
+		Java_java_awt_SplashScreen__1update;
+		Java_java_awt_SplashScreen__1isVisible;
+		Java_java_awt_SplashScreen__1getBounds;
+		Java_java_awt_SplashScreen__1getInstance;
+		Java_java_awt_SplashScreen__1close;
+                Java_java_awt_SplashScreen__1getImageFileName;
+                Java_java_awt_SplashScreen__1getImageJarName;
+                Java_java_awt_SplashScreen__1setImageData;
+
+		SplashLoadMemory;
+		SplashLoadFile;
+		SplashInit;
+		SplashClose;
+                SplashSetFileJarName;
+	local:
+		*;
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/xawt/FILES_c_unix.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,85 @@
+#
+# Copyright (c) 2002, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# include rules
+#
+
+FILES_c = \
+	XlibWrapper.c \
+	XWindow.c \
+	XToolkit.c \
+	X11Color.c \
+	X11SurfaceData.c \
+	awt_GraphicsEnv.c \
+	awt_InputMethod.c \
+	robot_common.c \
+	awt_Robot.c \
+        list.c \
+        multiVis.c \
+	initIDs.c \
+	awt_util.c \
+	awt_Desktop.c \
+	awt_UNIXToolkit.c \
+	X11FontScaler_md.c \
+	X11TextRenderer_md.c \
+	fontpath.c \
+	awt_Insets.c \
+	awt_Event.c \
+	X11Renderer.c \
+	X11PMBlitLoops.c \
+	OGLBlitLoops.c \
+	OGLBufImgOps.c \
+	OGLContext.c \
+	OGLFuncs.c \
+	OGLMaskBlit.c \
+	OGLMaskFill.c \
+	OGLPaints.c \
+	OGLRenderQueue.c \
+	OGLRenderer.c \
+	OGLSurfaceData.c \
+	OGLTextRenderer.c \
+	OGLVertexCache.c \
+	GLXGraphicsConfig.c \
+	GLXSurfaceData.c \
+	AccelGlyphCache.c \
+	awt_Font.c \
+	multi_font.c \
+	awt_AWTEvent.c \
+	awt_DrawingSurface.c \
+	jawt.c \
+	CUPSfuncs.c \
+	debug_assert.c \
+	debug_mem.c \
+	debug_trace.c \
+	debug_util.c \
+	awt_Plugin.c \
+	gtk2_interface.c \
+        swing_GTKEngine.c \
+        swing_GTKStyle.c \
+        rect.c \
+	sun_awt_X11_GtkFileDialogPeer.c \
+	XRSurfaceData.c \
+	XRBackendNative.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/xawt/FILES_export_unix.gmk	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,37 @@
+#
+# Copyright (c) 2002, 2010, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# include rules
+#
+
+FILES_export =   \
+      sun/awt/X11/XlibWrapper.java \
+      sun/awt/X11/XWindow.java \
+      sun/awt/X11/XDesktopPeer.java \
+      sun/awt/X11/XToolkit.java \
+      sun/awt/X11/XComponentPeer.java \
+      sun/awt/X11/XInputMethod.java \
+      sun/awt/X11/GtkFileDialogPeer.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/xawt/Makefile	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,381 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.awt.X11
+LIBRARY = awt_xawt
+PRODUCT = sun
+
+include $(BUILDDIR)/common/Defs.gmk
+
+GEN_DIR=$(GENSRCDIR)/sun/awt/X11
+
+CLASSES_INIT += $(TEMPDIR)/.gen.wrappers $(TEMPDIR)/.gen_icons touch.wrappers
+
+.PHONY: generated.clean
+
+#
+# Files
+#
+include FILES_c_unix.gmk
+include FILES_export_unix.gmk
+AUTO_FILES_JAVA_DIRS = sun/awt/X11
+AUTO_JAVA_PRUNE = WrapperGenerator.java
+
+LDFLAGS += -L$(OPENWIN_LIB)
+
+# For Xrender extension.
+ifeq ($(PLATFORM), solaris)
+LDFLAGS += -L/usr/openwin/sfw/lib$(ISA_DIR) -R/usr/openwin/sfw/lib$(ISA_DIR)
+endif
+
+ifeq ($(PLATFORM), linux)
+LDFLAGS += -lpthread
+dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
+endif
+
+ifeq ($(PLATFORM), macosx)
+LDFLAGS += -pthread
+dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
+endif
+
+# Since this library will be living in a subdirectory below the other libraries
+#   we need to add an extra runpath so that libraries in the upper directory
+#   are found at runtime.
+LD_RUNPATH_EXTRAS = ..
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(SHARE_SRC)/native/sunawt/alphacomposite
+vpath %.c   $(PLATFORM_SRC)/native/sun/xawt
+vpath %.c   $(PLATFORM_SRC)/native/sun/awt
+vpath %.c   $(SHARE_SRC)/native/sun/awt/debug
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image/gif
+vpath %.c   $(SHARE_SRC)/native/sun/awt/image/cvutils
+vpath %.c   $(SHARE_SRC)/native/sun/awt/shell
+vpath %.c   $(SHARE_SRC)/native/sun/java2d
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/loops
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/pipe
+vpath %.c   $(SHARE_SRC)/native/sun/awt/medialib
+vpath %.c   $(SHARE_SRC)/native/sun/awt/utility
+vpath %.cpp $(SHARE_SRC)/native/sun/image
+vpath %.c   $(SHARE_SRC)/native/sun/font
+vpath %.c   $(PLATFORM_SRC)/native/sun/awt/robot_child
+vpath %.c   $(SHARE_SRC)/native/sun/java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/sun/java2d/opengl
+vpath %.c   $(PLATFORM_SRC)/native/sun/java2d/x11
+
+OTHER_LDLIBS = $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) \
+                   $(LDFLAGS_COMMON) $(AWT_RUNPATH) $(OTHER_LDFLAGS) -lXtst -lXi
+
+ifeq  ($(PLATFORM), solaris)
+CPPFLAGS += -DFUNCPROTO=15
+dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
+endif
+
+CPPFLAGS += $(CUPS_CFLAGS)
+
+CPPFLAGS += -DXAWT -DXAWT_HACK \
+        -I$(TEMPDIR)/../../sun.awt/awt/CClassHeaders \
+        -I$(PLATFORM_SRC)/native/sun/awt \
+	-I$(PLATFORM_SRC)/native/sun/xawt \
+        -I$(PLATFORM_SRC)/native/sun/jdga \
+        -I$(SHARE_SRC)/native/sun/awt/debug \
+        -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
+        -I$(SHARE_SRC)/native/sun/java2d \
+	-I$(SHARE_SRC)/native/sun/java2d/loops \
+	-I$(SHARE_SRC)/native/sun/awt/image/cvutils \
+	-I$(SHARE_SRC)/native/sun/awt/image \
+	-I$(SHARE_SRC)/native/sun/font \
+	-I$(PLATFORM_SRC)/native/sun/java2d \
+	-I$(SHARE_SRC)/native/sun/java2d/pipe \
+	-I$(SHARE_SRC)/native/sun/java2d/opengl \
+	-I$(PLATFORM_SRC)/native/sun/java2d/opengl \
+	-I$(PLATFORM_SRC)/native/sun/java2d/x11 \
+	-I$(SHARE_SRC)/native/sun/dc/path \
+	-I$(SHARE_SRC)/native/sun/dc/doe \
+	-I$(SHARE_SRC)/native/sun/awt/alphacomposite \
+        -I$(SHARE_SRC)/native/sun/awt/medialib \
+	-I$(PLATFORM_SRC)/native/sun/awt/medialib \
+        -I$(PLATFORM_SRC)/native/sun/font \
+        -I$(SHARE_SRC)/native/sun/awt \
+        -I$(PLATFORM_SRC)/native/sun/awt
+
+ifeq ($(PLATFORM), linux)
+  ifndef CROSS_COMPILE_ARCH
+    # Allows for builds on Debian GNU Linux, X11 is in a different place 
+    # This should really be handled at a higher-level so we don't have to
+    # work-around this when cross-compiling
+    CPPFLAGS += -I$(SYS_ROOT)/usr/X11R6/include/X11/extensions \
+                -I$(SYS_ROOT)/usr/include/X11/extensions \
+                -I$(OPENWIN_HOME)/include 
+  else
+    CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \
+                -I$(OPENWIN_HOME)/include 
+  endif
+endif
+
+# We have some odd logic here because some Solaris 10 updates
+# have a render.h file that suggests gradients are supported, but
+# the Xrender.h doesn't have the corresponding type definitions.
+# Earlier updates have neither. We'd like to know if there's a mismatch.
+# Whilst in the C preprocessor we can tell if the render.h define's are set
+# we can't tell anything about C declarations.
+# A grep of Xrender.h is the only way to know this. If they are absent
+# we will set a flag indicating this mismatch and the JDK source file
+# will interpret it to resolve the problem.
+ifeq ($(PLATFORM), solaris)
+  CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions
+  OS_VERSION := $(shell uname -r)
+  XRENDER_H := $(OPENWIN_HOME)/share/include/X11/extensions/Xrender.h
+  ifeq ($(OS_VERSION),5.10) 
+     LINEARGRADIENT_CNT := $(shell $(EGREP) -c XLinearGradient $(XRENDER_H))
+     ifeq ($(LINEARGRADIENT_CNT),0) 
+       CFLAGS+= -DSOLARIS10_NO_XRENDER_STRUCTS
+     endif
+ endif
+endif
+
+ifeq ($(PLATFORM), macosx)
+  CPPFLAGS += -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
+endif
+
+ifeq ($(MILESTONE), internal)
+  CPPFLAGS += -DINTERNAL_BUILD
+endif
+
+#
+# Generation of wrappers
+#
+SIZER_DIR=$(GEN_DIR)/generator
+SIZER = $(SIZER_DIR)/sizer
+SIZER_32_C = $(SIZER).32.c
+SIZER_64_C = $(SIZER).64.c
+CFLAGS_32=$(CFLAGS)
+CFLAGS_64=$(CFLAGS)
+
+ifeq ($(PLATFORM), solaris)
+
+isalist:=$(shell $(ISAINFO))
+
+ifneq (,$(findstring sparcv9, $(isalist)))
+# On sparcv9 we generate both 32 and 64-bit sizers in spite of ARCH_DATA_MODEL.
+# On sparcv9 CFLAGS already contain $(XARCH_OPTION/64), so to generate 32-bit sizer we need to change this option.
+CFLAGS_32=$(subst $(XARCH_OPTION/64),$(XARCH_OPTION/32),$(CFLAGS))
+SIZERS = $(SIZER).32 $(SIZER).64
+SIZERS_C = $(SIZER_32_C) $(SIZER_64_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 $(WRAPPER_GENERATOR_DIR)/sizes.64
+CFLAGS_64=$(CFLAGS) $(XARCH_OPTION/64)
+else
+ifneq (,$(findstring amd64, $(isalist)))
+# On amd64 we generate both 32 and 64-bit sizers in spite of ARCH_DATA_MODEL.
+# On amd64 CFLAGS already contain $(XARCH_OPTION/64), so to generate 32-bit sizer we need to change this option.
+CFLAGS_32=$(subst $(XARCH_OPTION/64),$(XARCH_OPTION/32),$(CFLAGS))
+SIZERS = $(SIZER).32 $(SIZER).64
+SIZERS_C = $(SIZER_32_C) $(SIZER_64_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 $(WRAPPER_GENERATOR_DIR)/sizes.64
+CFLAGS_64=$(CFLAGS) $(XARCH_OPTION/64)
+else # !sparcv9 : includes (32-bit) sparc, i586
+SIZERS = $(SIZER).32
+SIZERS_C = $(SIZER_32_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32
+endif # amd64
+endif # sparcv9
+
+else # !solaris
+
+ifeq ($(PLATFORM), macosx)
+CFLAGS_32=-arch i386
+SIZERS = $(SIZER).32 $(SIZER).64
+SIZERS_C = $(SIZER_32_C) $(SIZER_64_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 $(WRAPPER_GENERATOR_DIR)/sizes.64
+CFLAGS_64=-arch x86_64
+else # !macosx
+ifeq ($(ARCH_DATA_MODEL), 32)
+SIZERS = $(SIZER).32
+SIZERS_C = $(SIZER_32_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32
+else # !32
+SIZERS = $(SIZER).64
+SIZERS_C = $(SIZER_64_C)
+SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.64
+endif # 32
+endif # !macosx
+endif # solaris
+
+# XXX Hack for 6185483 - use hard-coded sizes.
+# Add the 64-bit platforms that need to be included into 32-bit build
+# and have sizes.64-$(PLATFORM)-$(LIBARCH) hardcoded in the workspace
+ifeq ($(PLATFORM)-$(LIBARCH), solaris-i386)
+# If you define DOHACK=true for some combination of $(PLATFORM)-$(LIBARCH),
+# make sure you have sizes.64-$(PLATFORM)-$(LIBARCH) pre-generated in
+# $(PLATFORM_SRC)/classes/sun/awt/X11/generator/
+DOHACK=true
+endif # Hack
+
+ifeq ($(DOHACK), true)
+PREDEFINED_SIZES_TMPL=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/sizes.64-$(PLATFORM)-$(LIBARCH)
+PREDEFINED_SIZES=$(WRAPPER_GENERATOR_DIR)/sizes.64
+SIZES += $(WRAPPER_GENERATOR_DIR)/sizes.64
+endif
+
+ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64)
+DOCOMPARE=true
+endif
+# 64 bit sizers are generated on platform-libarch (left) for use 
+# on platform-libarch (right) and stored under the latter name.
+# Do compare manually stored and automatically generated pair(s) 
+# if DOCOMPARE=true, just after the generation.
+STORED_SIZES_TMPL_solaris_amd64=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/sizes.64-solaris-i386
+
+WRAPPER_GENERATOR_JAVA=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/WrapperGenerator.java
+WRAPPER_GENERATOR_DIR=$(GENSRCDIR)/sun/awt/X11/generator
+WRAPPER_GENERATOR_TEMPDIR=$(TEMPDIR)/sun/awt/X11/generator
+WRAPPER_GENERATOR_CLASS=$(WRAPPER_GENERATOR_TEMPDIR)/WrapperGenerator.class 
+XLIBTYPES=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/xlibtypes.txt
+
+$(SIZERS): $(SIZERS_C) 
+	$(prep-target)
+ifndef CROSS_COMPILE_ARCH
+	$(CC) $(CFLAGS_$(subst .,,$(suffix $@))) $(CPPFLAGS) -c -o $(SIZER)$(suffix $@).o $(SIZER)$(suffix $@).c
+	$(CC) $(CFLAGS_$(subst .,,$(suffix $@))) -o $@ $(CPPFLAGS) $(SIZER)$(suffix $@).o
+else
+	$(HOST_CC) $(CPPFLAGS) -c -o $(SIZER)$(suffix $@).o $(SIZER)$(suffix $@).c
+	$(HOST_CC) $(CPPFLAGS) -o $@ $(SIZER)$(suffix $@).o
+endif
+
+$(WRAPPER_GENERATOR_CLASS): $(WRAPPER_GENERATOR_JAVA)
+	$(prep-target)
+	$(BOOT_JAVAC_CMD) -d $(WRAPPER_GENERATOR_TEMPDIR) $(WRAPPER_GENERATOR_JAVA)
+
+$(SIZERS_C): $(WRAPPER_GENERATOR_CLASS) $(XLIBTYPES)
+	$(prep-target)
+	$(MKDIR) -p $(WRAPPER_GENERATOR_TEMPDIR)
+	$(BOOT_JAVA_CMD) -cp $(WRAPPER_GENERATOR_TEMPDIR) WrapperGenerator \
+	    $(SIZER_DIR) $(XLIBTYPES) "sizer" $(subst .,,$(suffix $(basename $@)))
+
+$(SIZES): $(SIZERS)
+	@if [ "$(DOHACK)$@" = "true$(PREDEFINED_SIZES)" ]; then \
+	    $(ECHO) COPYING $(PREDEFINED_SIZES_TMPL) into $@; \
+	    $(CP) $(PREDEFINED_SIZES_TMPL) $@; \
+	    $(CHMOD) +w $@;\
+	else	\
+	    $(ECHO) GENERATING $@; \
+	    $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \
+	fi
+	@if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \
+	    $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
+	    $(DIFF) $@ $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
+	fi
+
+$(TEMPDIR)/.gen.wrappers: $(SIZES) $(WRAPPER_GENERATOR_CLASS) $(XLIBTYPES)
+	$(BOOT_JAVA_CMD) -cp $(WRAPPER_GENERATOR_TEMPDIR) WrapperGenerator \
+	    $(GEN_DIR) $(XLIBTYPES) "gen" $(WRAPPER_GENERATOR_DIR)/sizes
+
+touch.wrappers: $(TEMPDIR)/.gen.wrappers
+	$(MKDIR) -p $(TEMPDIR)
+	$(TOUCH) $(TEMPDIR)/.gen.wrappers
+
+generated.clean:
+	$(RM) -r $(WRAPPER_GENERATOR_TEMPDIR)
+	$(RM) -r $(WRAPPER_GENERATOR_DIR)
+	$(RM) -r $(GEN_DIR)/*.java
+	$(RM) -r $(TEMPDIR)/.gen_icons
+
+ifdef OPENJDK
+    ICONS_PATH_PREFIX=$(PLATFORM_SRC)
+else
+    ICONS_PATH_PREFIX=$(CLOSED_SRC)/solaris
+endif
+
+ICONS = \
+    $(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon16.png \
+    $(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon24.png \
+    $(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon32.png \
+    $(ICONS_PATH_PREFIX)/classes/sun/awt/X11/java-icon48.png
+
+
+ICONPATH=$(PLATFORM_SRC)/classes/sun/awt/X11
+
+ICONS += \
+   $(ICONPATH)/security-icon-bw16.png \
+   $(ICONPATH)/security-icon-interim16.png \
+   $(ICONPATH)/security-icon-yellow16.png \
+   $(ICONPATH)/security-icon-bw24.png \
+   $(ICONPATH)/security-icon-interim24.png \
+   $(ICONPATH)/security-icon-yellow24.png \
+   $(ICONPATH)/security-icon-bw32.png \
+   $(ICONPATH)/security-icon-interim32.png \
+   $(ICONPATH)/security-icon-yellow32.png \
+   $(ICONPATH)/security-icon-bw48.png \
+   $(ICONPATH)/security-icon-interim48.png \
+   $(ICONPATH)/security-icon-yellow48.png
+
+TEMPDIR_CLASSES = $(TEMPDIR)/classes
+
+$(TEMPDIR_CLASSES)/sun/awt/X11/ToBin.class: ToBin.java
+	@$(prep-target)
+	$(BOOT_JAVAC_CMD) -d $(TEMPDIR_CLASSES) $<
+
+$(TEMPDIR)/.gen_icons: $(TEMPDIR_CLASSES)/sun/awt/X11/ToBin.class $(ICONS)
+	$(prep-target)
+	for i in $(ICONS); do \
+            filename=`basename $$i`; \
+	    name=`$(ECHO) $$filename | $(TR) '\-.' '__'`;  \
+            classname=$(GEN_DIR)/XAWTIcon32_$$name.java; \
+	    $(RM) $$classname; \
+	    $(ECHO) "package sun.awt.X11;" >> $$classname ; \
+	    $(ECHO) "public class XAWTIcon32_$$name {" >> $$classname; \
+	    $(ECHO) "public static int[] $$name = { " >> $$classname;  \
+	    $(CAT) $$i | \
+	      $(BOOT_JAVA_CMD) -cp $(TEMPDIR_CLASSES)  \
+		-Djava.awt.headless=true \
+		sun.awt.X11.ToBin >> $$classname; \
+	    $(ECHO) "}; }" >> $$classname;  \
+            classname=$(GEN_DIR)/XAWTIcon64_$$name.java; \
+	    $(RM) $$classname; \
+	    $(ECHO) "package sun.awt.X11;" >> $$classname ; \
+	    $(ECHO) "public class XAWTIcon64_$$name {" >> $$classname; \
+	    $(ECHO) "public static long[] $$name = { " >> $$classname;  \
+	    $(CAT) $$i | \
+	      $(BOOT_JAVA_CMD) -cp $(TEMPDIR_CLASSES)  \
+		-Djava.awt.headless=true \
+		sun.awt.X11.ToBin >> $$classname; \
+	    $(ECHO) "}; }" >> $$classname;  \
+	done
+	$(TOUCH) $@
+
+clean clobber:: generated.clean
+
+.PHONY: generated.clean robot_child
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/xawt/ToBin.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 2005, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package sun.awt.X11;
+
+import java.io.*;
+import java.awt.image.*;
+import javax.imageio.*;
+import java.awt.*;
+
+public class ToBin {
+    public static void main(String[] args) throws Exception {
+        BufferedImage im = ImageIO.read(System.in);
+        BufferedImage bi = null;
+        int iconWidth = im.getWidth(null);
+        int iconHeight = im.getHeight(null);
+        if (im != null && iconHeight != 0 &&  iconWidth != 0) {
+            bi = new BufferedImage(iconWidth, iconHeight, BufferedImage.TYPE_INT_ARGB);
+            Graphics g = bi.getGraphics();
+            try {
+                g.drawImage(im, 0, 0, iconWidth, iconHeight, null);
+            } finally {
+                g.dispose();
+            }
+        }
+        DataBuffer srcBuf = bi.getData().getDataBuffer();
+        int[] buf = ((DataBufferInt)srcBuf).getData();
+        System.out.print(iconWidth + ",");
+        System.out.println(iconHeight + ",");
+        for (int i = 0; i < buf.length; i++) {
+            System.out.print("0x" + Integer.toHexString(buf[i]) + ", ");
+            if (i % 10 == 0) {
+                System.out.println();
+            }
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefiles/sun/xawt/mapfile-vers	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,463 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. 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.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+        global:
+        JNI_OnLoad;
+        Java_sun_awt_X11_XlibWrapper_copyIntArray;
+        Java_sun_awt_X11_XlibWrapper_copyLongArray;
+        Java_sun_awt_X11_XlibWrapper_getAddress;
+        Java_sun_awt_X11_XlibWrapper_XConvertSelection;
+        Java_sun_awt_X11_XlibWrapper_XSetSelectionOwner;
+        Java_sun_awt_X11_XlibWrapper_XGetSelectionOwner;
+        Java_sun_awt_X11_XlibWrapper_XGetAtomName;
+        Java_sun_awt_X11_XlibWrapper_XMaxRequestSize;
+        Java_sun_awt_X11_XlibWrapper_XReparentWindow;
+        Java_sun_awt_X11_XlibWrapper_XAllocSizeHints;
+        Java_sun_awt_X11_XlibWrapper_XAllocWMHints;
+        Java_sun_awt_X11_XlibWrapper_XSetMinMaxHints;
+        Java_sun_awt_X11_XlibWrapper_XGetVisualInfo;
+        Java_sun_awt_X11_XlibWrapper_XOpenDisplay;
+        Java_sun_awt_X11_XlibWrapper_XCloseDisplay;
+        Java_sun_awt_X11_XlibWrapper_XDisplayString;
+        Java_sun_awt_X11_XlibWrapper_XSetCloseDownMode;
+        Java_sun_awt_X11_XlibWrapper_XCreateWindow;
+        Java_sun_awt_X11_XlibWrapper_XMapWindow;
+        Java_sun_awt_X11_XlibWrapper_XMapRaised;
+        Java_sun_awt_X11_XlibWrapper_XUnmapWindow;
+        Java_sun_awt_X11_XlibWrapper_XSelectInput;
+        Java_sun_awt_X11_XlibWrapper_XNextEvent;
+        Java_sun_awt_X11_XlibWrapper_XMaskEvent;
+        Java_sun_awt_X11_XlibWrapper_XWindowEvent;
+        Java_sun_awt_X11_XlibWrapper_XFilterEvent;
+        Java_sun_awt_X11_XlibWrapper_XSupportsLocale;
+        Java_sun_awt_X11_XlibWrapper_XSetLocaleModifiers;
+        Java_sun_awt_X11_XlibWrapper_XPeekEvent;
+        Java_sun_awt_X11_XlibWrapper_DefaultScreen;
+	Java_sun_awt_X11_XlibWrapper_ScreenOfDisplay;
+	Java_sun_awt_X11_XlibWrapper_DoesBackingStore;
+        Java_sun_awt_X11_XlibWrapper_RootWindow;
+        Java_sun_awt_X11_XlibWrapper_DisplayHeight;
+        Java_sun_awt_X11_XlibWrapper_DisplayWidthMM;
+        Java_sun_awt_X11_XlibWrapper_DisplayWidth;
+        Java_sun_awt_X11_XlibWrapper_DisplayHeightMM;
+        Java_sun_awt_X11_XlibWrapper_ScreenCount;
+        Java_sun_awt_X11_XlibWrapper_XMoveResizeWindow;
+        Java_sun_awt_X11_XlibWrapper_XResizeWindow;
+        Java_sun_awt_X11_XlibWrapper_XMoveWindow;
+        Java_sun_awt_X11_XlibWrapper_XGetWindowAttributes;
+        Java_sun_awt_X11_XlibWrapper_XGetGeometry;
+        Java_sun_awt_X11_XlibWrapper_XGrabPointer;
+        Java_sun_awt_X11_XlibWrapper_XUngrabPointer;
+        Java_sun_awt_X11_XlibWrapper_XGrabKeyboard;
+        Java_sun_awt_X11_XlibWrapper_XUngrabKeyboard;
+        Java_sun_awt_X11_XlibWrapper_XSetWindowBackground;
+        Java_sun_awt_X11_XlibWrapper_XFlush;
+        Java_sun_awt_X11_XlibWrapper_XSync;
+        Java_sun_awt_X11_XlibWrapper_XEventsQueued;
+        Java_sun_awt_X11_XlibWrapper_XRaiseWindow;
+        Java_sun_awt_X11_XlibWrapper_XLowerWindow;
+        Java_sun_awt_X11_XlibWrapper_XRestackWindows;
+        Java_sun_awt_X11_XlibWrapper_XSetInputFocus;
+        Java_sun_awt_X11_XlibWrapper_XSetInputFocus2;
+        Java_sun_awt_X11_XlibWrapper_XGetInputFocus;
+        Java_sun_awt_X11_XlibWrapper_XDestroyWindow;
+        Java_sun_awt_X11_XlibWrapper_XTranslateCoordinates;
+        Java_sun_awt_X11_XlibWrapper_XCreateFontCursor;
+        Java_sun_awt_X11_XlibWrapper_XSetTransientFor;
+        Java_sun_awt_X11_XlibWrapper_XSetWMHints;
+        Java_sun_awt_X11_XlibWrapper_XGetWMHints;
+        Java_sun_awt_X11_XlibWrapper_XShapeQueryExtension;
+        Java_sun_awt_X11_XlibWrapper_SetRectangularShape;
+        Java_sun_awt_X11_XlibWrapper_SetBitmapShape;
+        Java_sun_awt_X11_XlibWrapper_XConfigureWindow;
+        Java_sun_awt_X11_XlibWrapper_SetZOrder;
+        Java_sun_awt_X11_XToolkit_initIDs;
+        Java_sun_awt_X11_XWindow_getNativeColor;
+        Java_sun_awt_X11_XWindow_getWMInsets;
+        Java_sun_awt_X11_XWindow_getTopWindow;
+        Java_sun_awt_X11_XWindow_getWindowBounds;
+        Java_sun_awt_X11_XWindow_setSizeHints;
+        Java_sun_awt_X11_XWindow_getAWTKeyCodeForKeySym;
+        Java_sun_awt_X11_XWindow_getKeySymForAWTKeyCode;
+        Java_sun_awt_X11_XToolkit_nativeLoadSystemColors;
+        Java_sun_awt_X11_XToolkit_awt_1toolkit_1init;
+        Java_sun_awt_X11_XToolkit_awt_1output_1flush;
+        Java_sun_awt_X11_XToolkit_wakeup_1poll;
+        Java_java_awt_Cursor_finalizeImpl;
+        Java_sun_awt_X11_XlibWrapper_InternAtom;
+        Java_sun_awt_X11_XlibWrapper_GetProperty;
+        Java_sun_awt_X11_XlibWrapper_SetProperty;
+        Java_sun_awt_X11_XlibWrapper_XGetDefault;
+        Java_sun_awt_X11_XlibWrapper_XGetPointerMapping;
+        Java_sun_awt_X11_XlibWrapper_XScreenNumberOfScreen;
+        Java_sun_awt_X11_XlibWrapper_getScreenOfWindow;
+        Java_sun_awt_X11_XlibWrapper_XIconifyWindow;
+        Java_sun_awt_X11_XlibWrapper_XBell;
+        Java_sun_awt_X11_XlibWrapper_XChangePropertyImpl;
+        Java_sun_awt_X11_XlibWrapper_XChangePropertyS;
+        Java_sun_awt_X11_XlibWrapper_XGetWindowProperty;
+        Java_sun_awt_X11_XlibWrapper_getStringBytes;
+        Java_sun_awt_X11_XlibWrapper_XFree;
+        Java_sun_awt_X11_XlibWrapper_ServerVendor;
+        Java_sun_awt_X11_XlibWrapper_VendorRelease;
+        Java_sun_awt_X11_XlibWrapper_IsXsunKPBehavior;
+        Java_sun_awt_X11_XlibWrapper_IsSunKeyboard;
+        Java_sun_awt_X11_XlibWrapper_IsKanaKeyboard;
+        Java_sun_awt_X11_XlibWrapper_SetToolkitErrorHandler;
+        Java_sun_awt_X11_XlibWrapper_XSetErrorHandler;
+        Java_sun_awt_X11_XlibWrapper_CallErrorHandler;
+        Java_sun_awt_X11_XlibWrapper_PrintXErrorEvent;
+        Java_sun_awt_X11_XlibWrapper_XInternAtoms;
+        Java_sun_awt_X11_XlibWrapper_XChangeWindowAttributes;
+        Java_sun_awt_X11_XlibWrapper_XDeleteProperty;
+        Java_sun_awt_X11_XlibWrapper_XSetWMNormalHints;
+        Java_sun_awt_X11_XlibWrapper_XGetWMNormalHints;
+        Java_sun_awt_X11_XlibWrapper_XSendEvent;
+        Java_sun_awt_X11_XlibWrapper_XQueryTree;
+        Java_sun_awt_X11_XlibWrapper_memcpy;
+        Java_sun_awt_X11_XlibWrapper_XdbeQueryExtension;
+        Java_sun_awt_X11_XlibWrapper_XQueryExtension;
+        Java_sun_awt_X11_XlibWrapper_IsKeypadKey;
+        Java_sun_awt_X11_XlibWrapper_XdbeAllocateBackBufferName;
+        Java_sun_awt_X11_XlibWrapper_XdbeDeallocateBackBufferName;
+        Java_sun_awt_X11_XlibWrapper_XdbeSwapBuffers;
+        Java_sun_awt_X11_XlibWrapper_XdbeBeginIdiom;
+        Java_sun_awt_X11_XlibWrapper_XdbeEndIdiom;
+        Java_sun_awt_X11_XDesktopPeer_init;
+        Java_sun_awt_X11_XDesktopPeer_gnome_1url_1show;
+        Java_sun_awt_X11_XRobotPeer_getRGBPixelsImpl;
+        Java_sun_awt_X11_XRobotPeer_keyPressImpl;
+        Java_sun_awt_X11_XRobotPeer_keyReleaseImpl;
+        Java_sun_awt_X11_XRobotPeer_mouseMoveImpl;
+        Java_sun_awt_X11_XRobotPeer_mousePressImpl;
+        Java_sun_awt_X11_XRobotPeer_mouseReleaseImpl;
+        Java_sun_awt_X11_XRobotPeer_mouseWheelImpl;
+        Java_sun_awt_X11_XRobotPeer_setup;
+        Java_sun_awt_X11_XToolkit_getNumberOfButtonsImpl;
+        Java_java_awt_Component_initIDs;
+        Java_java_awt_Container_initIDs;
+        Java_java_awt_Button_initIDs;
+        Java_java_awt_Scrollbar_initIDs;
+        Java_java_awt_Window_initIDs;
+        Java_java_awt_Frame_initIDs;
+	Java_sun_awt_SunToolkit_closeSplashScreen;
+        Java_sun_awt_UNIXToolkit_check_1gtk;
+        Java_sun_awt_UNIXToolkit_load_1gtk;
+        Java_sun_awt_UNIXToolkit_unload_1gtk;
+        Java_sun_awt_UNIXToolkit_load_1stock_1icon;
+        Java_sun_awt_UNIXToolkit_load_1gtk_1icon;
+        Java_sun_awt_UNIXToolkit_nativeSync;
+        Java_sun_awt_UNIXToolkit_gtkCheckVersionImpl;
+        Java_java_awt_AWTEvent_initIDs;
+        Java_java_awt_event_InputEvent_initIDs;
+        Java_java_awt_event_KeyEvent_initIDs;
+        Java_java_awt_MenuComponent_initIDs;
+        Java_java_awt_Cursor_initIDs;
+        Java_java_awt_MenuItem_initIDs;
+        Java_java_awt_Menu_initIDs;
+        Java_java_awt_TextArea_initIDs;
+        Java_java_awt_Checkbox_initIDs;
+        Java_java_awt_ScrollPane_initIDs;
+        Java_java_awt_TextField_initIDs;
+        Java_java_awt_TrayIcon_initIDs;
+        Java_sun_font_FontConfigManager_getFontConfig;
+        Java_sun_font_FontConfigManager_getFontConfigAASettings;
+        Java_sun_font_FontConfigManager_getFontConfigVersion;
+	Java_sun_awt_X11FontManager_getFontPathNative;
+        Java_sun_awt_X11GraphicsEnvironment_initDisplay;
+        Java_sun_awt_X11GraphicsEnvironment_initGLX;
+	Java_sun_awt_X11GraphicsEnvironment_initXRender;
+        Java_sun_awt_X11GraphicsEnvironment_checkShmExt;
+        Java_sun_awt_X11GraphicsEnvironment_getNumScreens;
+        Java_sun_awt_X11GraphicsEnvironment_getDefaultScreenNum;
+        Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
+        Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
+        Java_sun_awt_X11GraphicsEnvironment_getDisplayString;
+#        Java_sun_awt_X11GraphicsEnvironment_getNativeFonts;
+        Java_sun_awt_X11GraphicsDevice_initIDs;
+        Java_sun_awt_X11GraphicsDevice_getConfigVisualId;
+        Java_sun_awt_X11GraphicsDevice_getConfigDepth;
+        Java_sun_awt_X11GraphicsDevice_getNumConfigs;
+        Java_sun_awt_X11GraphicsDevice_getConfigColormap;
+        Java_sun_awt_X11GraphicsDevice_isDBESupported;
+        Java_sun_awt_X11GraphicsDevice_getDisplay;
+        Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals;
+        Java_sun_awt_X11GraphicsDevice_initXrandrExtension;
+        Java_sun_awt_X11GraphicsDevice_enterFullScreenExclusive;
+        Java_sun_awt_X11GraphicsDevice_exitFullScreenExclusive;
+        Java_sun_awt_X11GraphicsDevice_getCurrentDisplayMode;
+        Java_sun_awt_X11GraphicsDevice_enumDisplayModes;
+        Java_sun_awt_X11GraphicsDevice_configDisplayMode;
+        Java_sun_awt_X11GraphicsDevice_resetNativeData;
+        Java_sun_awt_X11GraphicsConfig_initIDs;
+        Java_sun_awt_X11GraphicsConfig_getXResolution;
+        Java_sun_awt_X11GraphicsConfig_getYResolution;
+        Java_sun_awt_X11GraphicsConfig_init;
+        Java_sun_awt_X11GraphicsConfig_dispose;
+        Java_sun_awt_X11GraphicsConfig_makeColorModel;
+        Java_sun_awt_X11GraphicsConfig_pGetBounds;
+        Java_sun_awt_X11GraphicsConfig_createBackBuffer;
+	Java_sun_awt_X11GraphicsConfig_destroyBackBuffer;
+	Java_sun_awt_X11GraphicsConfig_swapBuffers;
+	Java_sun_awt_X11GraphicsConfig_isTranslucencyCapable;
+        Java_sun_awt_X11_XToolkit_getTrayIconDisplayTimeout;
+        Java_java_awt_Insets_initIDs;
+        Java_java_awt_KeyboardFocusManager_initIDs;
+        Java_java_awt_Font_initIDs;
+        # libfontmanager entry points
+        AWTIsHeadless;
+	AWTCountFonts;
+        AWTLoadFont;
+        AWTFreeFont;
+        AWTFontAscent;
+        AWTFontDescent;
+        AWTFontMinByte1;
+        AWTFontMaxByte1;
+        AWTFontMinCharOrByte2;
+        AWTFontMaxCharOrByte2;
+        AWTFontDefaultChar;
+        AWTFontPerChar;
+        AWTFontMaxBounds;
+        AWTFontTextExtents16;
+        AWTFreeChar;
+        AWTFontGenerateImage;
+        AWTCharAdvance;
+        AWTCharLBearing;
+        AWTCharRBearing;
+        AWTCharAscent;
+        AWTCharDescent;
+        AWTDrawGlyphList;
+        AccelGlyphCache_RemoveAllCellInfos;
+
+        Java_sun_awt_X11_XToolkit_waitForEvents;
+        Java_java_awt_Event_initIDs;
+        Java_sun_awt_X11_XWindow_x11inputMethodLookupString;
+        Java_sun_awt_X11_XWindow_haveCurrentX11InputMethodInstance;
+        Java_java_awt_AWTEvent_nativeSetSource;
+        Java_java_awt_Dialog_initIDs;
+        Java_sun_awt_PlatformFont_initIDs;
+        Java_sun_awt_FontDescriptor_initIDs;
+        Java_sun_awt_X11_XFontPeer_initIDs;
+        Java_sun_awt_X11InputMethod_initIDs;
+        Java_sun_awt_X11InputMethod_resetXIC;
+        Java_sun_awt_X11InputMethod_disposeXIC;
+        Java_sun_awt_X11InputMethod_setCompositionEnabledNative;
+        Java_sun_awt_X11InputMethod_isCompositionEnabledNative;
+        Java_sun_awt_X11InputMethod_turnoffStatusWindow;
+        Java_sun_awt_X11_XInputMethod_openXIMNative;
+        Java_sun_awt_X11_XInputMethod_createXICNative;
+        Java_sun_awt_X11_XInputMethod_setXICFocusNative;
+        Java_sun_awt_X11_XInputMethod_adjustStatusWindow;
+        Java_sun_awt_X11_XlibWrapper_XQueryPointer;
+        Java_sun_awt_X11_XlibWrapper_XFreeCursor;
+        Java_sun_awt_X11_XToolkit_getDefaultXColormap;
+        Java_sun_awt_X11_XToolkit_getDefaultScreenData;
+        Java_sun_awt_X11_XToolkit_getEnv;
+        Java_sun_awt_X11_XlibWrapper_XCreateBitmapFromData;
+        Java_sun_awt_X11_XlibWrapper_XFreePixmap;
+        Java_sun_awt_X11_XlibWrapper_XAllocColor;
+        Java_sun_awt_X11_XlibWrapper_XCreatePixmapCursor;
+        Java_sun_awt_X11_XlibWrapper_XQueryBestCursor;
+        Java_sun_awt_X11_XlibWrapper_XCreatePixmap;
+        Java_sun_awt_X11_XlibWrapper_XCreateImage;
+        Java_sun_awt_X11_XlibWrapper_XCreateGC;
+        Java_sun_awt_X11_XlibWrapper_XDestroyImage;
+        Java_sun_awt_X11_XlibWrapper_XPutImage;
+        Java_sun_awt_X11_XlibWrapper_XFreeGC;
+        Java_sun_awt_X11_XlibWrapper_XSetWindowBackgroundPixmap;
+        Java_sun_awt_X11_XlibWrapper_XClearWindow;
+        Java_sun_awt_X11_XlibWrapper_XGetIconSizes;
+        Java_sun_awt_X11_XlibWrapper_XKeycodeToKeysym;
+        Java_sun_awt_X11_XlibWrapper_XKeysymToKeycode;
+	Java_sun_awt_X11_XlibWrapper_XQueryKeymap;
+        Java_sun_awt_X11_XlibWrapper_XkbGetEffectiveGroup;
+        Java_sun_awt_X11_XlibWrapper_XkbSelectEvents;
+        Java_sun_awt_X11_XlibWrapper_XkbSelectEventDetails;
+        Java_sun_awt_X11_XlibWrapper_XkbKeycodeToKeysym;
+        Java_sun_awt_X11_XlibWrapper_XkbLibraryVersion;
+        Java_sun_awt_X11_XlibWrapper_XkbQueryExtension;
+        Java_sun_awt_X11_XlibWrapper_XkbGetMap;
+        Java_sun_awt_X11_XlibWrapper_XkbGetUpdatedMap;
+        Java_sun_awt_X11_XlibWrapper_XkbFreeKeyboard;
+        Java_sun_awt_X11_XlibWrapper_XkbTranslateKeyCode;
+        Java_sun_awt_X11_XlibWrapper_XGetModifierMapping;
+        Java_sun_awt_X11_XlibWrapper_XFreeModifiermap;
+        Java_sun_awt_X11_XlibWrapper_XRefreshKeyboardMapping;
+        Java_sun_awt_X11_XlibWrapper_XChangeActivePointerGrab;
+        Java_sun_awt_X11_XlibWrapper_XNextSecondaryLoopEvent;
+        Java_sun_awt_X11_XlibWrapper_ExitSecondaryLoop;
+        Java_sun_awt_X11_XlibWrapper_XTextPropertyToStringList;
+        Java_sun_awt_X11_XlibWrapper_XGrabServer;
+        Java_sun_awt_X11_XlibWrapper_XUngrabServer;
+        Java_sun_awt_X11_XlibWrapper_XPutBackEvent;
+        Java_sun_awt_X11_XlibWrapper_XConvertCase;
+        Java_sun_awt_X11_XlibWrapper_XSynchronize;
+        Java_java_awt_FileDialog_initIDs;
+        Java_sun_awt_X11_XWindow_initIDs;
+        Java_sun_awt_X11_XWindowPeer_getLocalHostname;
+        Java_sun_awt_X11_XWindowPeer_getJvmPID;
+
+        Java_sun_java2d_opengl_OGLContext_getOGLIdString;
+        Java_sun_java2d_opengl_OGLMaskFill_maskFill;
+        Java_sun_java2d_opengl_OGLRenderer_drawPoly;
+        Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer;
+        Java_sun_java2d_opengl_OGLSurfaceData_initTexture;
+        Java_sun_java2d_opengl_OGLSurfaceData_initFBObject;
+        Java_sun_java2d_opengl_OGLSurfaceData_initFlipBackbuffer;
+        Java_sun_java2d_opengl_OGLSurfaceData_getTextureID;
+        Java_sun_java2d_opengl_OGLSurfaceData_getTextureTarget;
+        Java_sun_java2d_opengl_OGLTextRenderer_drawGlyphList;
+        Java_sun_java2d_opengl_GLXGraphicsConfig_getGLXConfigInfo;
+        Java_sun_java2d_opengl_GLXGraphicsConfig_initConfig;
+        Java_sun_java2d_opengl_GLXGraphicsConfig_getOGLCapabilities;
+        Java_sun_java2d_opengl_GLXSurfaceData_initOps;
+        Java_sun_java2d_opengl_GLXSurfaceData_initPbuffer;
+
+        Java_sun_java2d_x11_X11PMBlitBgLoops_nativeBlitBg;
+        Java_sun_java2d_x11_X11PMBlitLoops_nativeBlit;
+        Java_sun_java2d_x11_X11PMBlitLoops_updateBitmask;
+	Java_sun_java2d_x11_X11Renderer_XFillSpans;
+	Java_sun_java2d_x11_X11Renderer_XDrawArc;
+	Java_sun_java2d_x11_X11Renderer_XDrawLine;
+	Java_sun_java2d_x11_X11Renderer_XDrawOval;
+	Java_sun_java2d_x11_X11Renderer_XDrawPoly;
+	Java_sun_java2d_x11_X11Renderer_XDrawRect;
+	Java_sun_java2d_x11_X11Renderer_XDrawRoundRect;
+        Java_sun_java2d_x11_X11Renderer_XDoPath;
+	Java_sun_java2d_x11_X11Renderer_XFillArc;
+	Java_sun_java2d_x11_X11Renderer_XFillOval;
+	Java_sun_java2d_x11_X11Renderer_XFillPoly;
+	Java_sun_java2d_x11_X11Renderer_XFillRect;
+	Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
+        Java_sun_java2d_x11_X11Renderer_devCopyArea;
+        Java_sun_java2d_x11_X11SurfaceData_initIDs;
+        Java_sun_java2d_x11_X11SurfaceData_isDgaAvailable;
+	Java_sun_java2d_x11_X11SurfaceData_isShmPMAvailable;
+        Java_sun_java2d_x11_X11SurfaceData_initSurface;
+        Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
+        Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
+        Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
+
+        Java_sun_java2d_x11_XSurfaceData_initOps;
+        Java_sun_java2d_x11_XSurfaceData_XCreateGC;
+        Java_sun_java2d_x11_XSurfaceData_XResetClip;
+        Java_sun_java2d_x11_XSurfaceData_XSetClip;
+        Java_sun_java2d_x11_XSurfaceData_flushNativeSurface;
+	Java_sun_java2d_x11_XSurfaceData_isDrawableValid;
+        Java_sun_java2d_x11_XSurfaceData_setInvalid;
+        Java_sun_java2d_x11_XSurfaceData_XSetGraphicsExposures;
+        Java_sun_java2d_xr_XRSurfaceData_initXRPicture;
+        Java_sun_java2d_xr_XRSurfaceData_initIDs;
+        Java_sun_java2d_xr_XRSurfaceData_XRInitSurface;
+	Java_sun_java2d_xr_XRSurfaceData_freeXSDOPicture;
+	Java_sun_java2d_xr_XRBackendNative_initIDs;
+	Java_sun_java2d_xr_XRBackendNative_freeGC;
+	Java_sun_java2d_xr_XRBackendNative_createGC;
+	Java_sun_java2d_xr_XRBackendNative_createPixmap;
+	Java_sun_java2d_xr_XRBackendNative_createPictureNative;
+	Java_sun_java2d_xr_XRBackendNative_freePicture;
+	Java_sun_java2d_xr_XRBackendNative_freePixmap;
+	Java_sun_java2d_xr_XRBackendNative_setPictureRepeat;
+	Java_sun_java2d_xr_XRBackendNative_setGCExposures;
+	Java_sun_java2d_xr_XRBackendNative_setGCForeground;
+	Java_sun_java2d_xr_XRBackendNative_copyArea;
+	Java_sun_java2d_xr_XRBackendNative_renderComposite;
+	Java_sun_java2d_xr_XRBackendNative_renderRectangle;
+	Java_sun_java2d_xr_XRBackendNative_XRenderRectanglesNative;
+	Java_sun_java2d_xr_XRBackendNative_XRSetTransformNative;
+	Java_sun_java2d_xr_XRBackendNative_XRCreateLinearGradientPaintNative;
+	Java_sun_java2d_xr_XRBackendNative_XRCreateRadialGradientPaintNative;
+	Java_sun_java2d_xr_XRBackendNative_setFilter;
+	Java_sun_java2d_xr_XRBackendNative_XRSetClipNative;
+	Java_sun_java2d_xr_XRBackendNative_putMaskNative;
+	Java_sun_java2d_xr_XRBackendNative_XRAddGlyphsNative;
+	Java_sun_java2d_xr_XRBackendNative_XRFreeGlyphsNative;
+	Java_sun_java2d_xr_XRBackendNative_XRenderCreateGlyphSetNative;
+	Java_sun_java2d_xr_XRBackendNative_XRenderCompositeTextNative;
+	Java_sun_java2d_xr_XRBackendNative_setGCMode;
+	Java_sun_java2d_xr_XRBackendNative_GCRectanglesNative;
+	Java_sun_java2d_xr_XRBackendNative_renderCompositeTrapezoidsNative;
+
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box_1gap;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1check;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1expander;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1extension;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1flat_1box;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1focus;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1handle;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1hline;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1option;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1shadow;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1slider;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1vline;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1background;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeStartPainting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1switch_1theme;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1get_1gtk_1setting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeSetRangeValue;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetXThickness;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetYThickness;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetColorForState;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetClassValue;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetPangoFontName;
+
+        Java_sun_awt_X11_GtkFileDialogPeer_initIDs;
+        Java_sun_awt_X11_GtkFileDialogPeer_run;
+        Java_sun_awt_X11_GtkFileDialogPeer_quit;
+        Java_sun_awt_X11_GtkFileDialogPeer_toFront;
+        Java_sun_awt_X11_GtkFileDialogPeer_setBounds;
+
+	Java_sun_print_CUPSPrinter_initIDs;
+	Java_sun_print_CUPSPrinter_getCupsServer;
+	Java_sun_print_CUPSPrinter_getCupsPort;
+	Java_sun_print_CUPSPrinter_canConnect;	
+	Java_sun_print_CUPSPrinter_getMedia;
+	Java_sun_print_CUPSPrinter_getPageSizes;
+
+        awt_GetDrawingSurface;
+        awt_FreeDrawingSurface;
+        awt_Unlock;
+        awt_Lock;
+        awt_GetComponent;
+
+        # Java Plugin
+        # This is in awt_LoadLibrary.c and falls through to libmawt.
+        # Evidently plugin needs this for backward compatability.
+        getAwtLockFunctions;
+        getAwtData;
+        getAwtDisplay;
+        #XAWT entry point for CDE
+        Java_sun_awt_motif_XsessionWMcommand;
+        Java_sun_awt_motif_XsessionWMcommand_New;
+
+        local:
+                *;
+};
--- a/src/macosx/classes/com/apple/eawt/_AppEventHandler.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/com/apple/eawt/_AppEventHandler.java	Tue May 08 07:34:53 2012 -0700
@@ -157,7 +157,10 @@
                 }
             });
         } finally {
-            nativeReplyToAppShouldTerminate(true);
+            // Either we've just called System.exit(), or the app will call
+            // it when processing a WINDOW_CLOSING event. Either way, we reply
+            // to Cocoa that we don't want to exit the event loop yet.
+            nativeReplyToAppShouldTerminate(false);
         }
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/macosx/classes/java/lang/ClassLoaderHelper.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package java.lang;
+
+import java.io.File;
+
+class ClassLoaderHelper {
+
+    private ClassLoaderHelper() {}
+
+    /**
+     * Returns an alternate path name for the given file
+     * such that if the original pathname did not exist, then the
+     * file may be located at the alternate location.
+     * For mac, this replaces the final .dylib suffix with .jnilib
+     */
+    static File mapAlternativeName(File lib) {
+        String name = lib.toString();
+        int index = name.lastIndexOf('.');
+        if (index < 0) {
+            return null;
+        }
+        return new File(name.substring(0, index) + ".jnilib");
+    }
+}
--- a/src/macosx/classes/sun/lwawt/LWComponentPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWComponentPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -213,16 +213,8 @@
             SwingUtilities3.setDelegateRepaintManager(delegate, new RepaintManager() {
                 @Override
                 public void addDirtyRegion(final JComponent c, final int x, final int y, final int w, final int h) {
-                    if (SunToolkit.isDispatchThreadForAppContext(getTarget())) {
-                        synchronized (getDelegateLock()) {
-                            if (getDelegate().isPaintingForPrint()) {
-                                return;
-                            }
-                        }
-                    }
-                    Rectangle res = SwingUtilities.convertRectangle(
-                            c, new Rectangle(x, y, w, h), getDelegate());
-                    repaintPeer(res);
+                    repaintPeer(SwingUtilities.convertRectangle(
+                            c, new Rectangle(x, y, w, h), getDelegate()));
                 }
             });
         }
@@ -616,6 +608,17 @@
                 windowLocation.y + locationInWindow.y);
     }
 
+    /**
+     * Returns the cursor of the peer, which is cursor of the target by default,
+     * but peer can override this behavior.
+     *
+     * @param p Point relative to the peer.
+     * @return Cursor of the peer or null if default cursor should be used.
+     */
+    protected Cursor getCursor(final Point p) {
+        return getTarget().getCursor();
+    }
+
     @Override
     public void setBackground(final Color c) {
         final Color oldBg = getBackground();
@@ -982,16 +985,23 @@
     // DropTargetPeer Method
     @Override
     public void addDropTarget(DropTarget dt) {
-        synchronized (dropTargetLock){
-            // 10-14-02 VL: Windows WComponentPeer would add (or remove) the drop target only
-            // if it's the first (or last) one for the component. Otherwise this call is a no-op.
-            if (++fNumDropTargets == 1) {
-                // Having a non-null drop target would be an error but let's check just in case:
-                if (fDropTarget != null)
-                    System.err.println("CComponent.addDropTarget(): current drop target is non-null.");
+        LWWindowPeer winPeer = getWindowPeerOrSelf();
+        if (winPeer != null && winPeer != this) {
+            // We need to register the DropTarget in the
+            // peer of the window ancestor of the component
+            winPeer.addDropTarget(dt);
+        } else {
+            synchronized (dropTargetLock) {
+                // 10-14-02 VL: Windows WComponentPeer would add (or remove) the drop target only
+                // if it's the first (or last) one for the component. Otherwise this call is a no-op.
+                if (++fNumDropTargets == 1) {
+                    // Having a non-null drop target would be an error but let's check just in case:
+                    if (fDropTarget != null)
+                        System.err.println("CComponent.addDropTarget(): current drop target is non-null.");
 
-                // Create a new drop target:
-                fDropTarget = CDropTarget.createDropTarget(dt, target, this);
+                    // Create a new drop target:
+                    fDropTarget = CDropTarget.createDropTarget(dt, target, this);
+                }
             }
         }
     }
@@ -999,17 +1009,24 @@
     // DropTargetPeer Method
     @Override
     public void removeDropTarget(DropTarget dt) {
-        synchronized (dropTargetLock){
-            // 10-14-02 VL: Windows WComponentPeer would add (or remove) the drop target only
-            // if it's the first (or last) one for the component. Otherwise this call is a no-op.
-            if (--fNumDropTargets == 0) {
-                // Having a null drop target would be an error but let's check just in case:
-                if (fDropTarget != null) {
-                    // Dispose of the drop target:
-                    fDropTarget.dispose();
-                    fDropTarget = null;
-                } else
-                    System.err.println("CComponent.removeDropTarget(): current drop target is null.");
+        LWWindowPeer winPeer = getWindowPeerOrSelf();
+        if (winPeer != null && winPeer != this) {
+            // We need to unregister the DropTarget in the
+            // peer of the window ancestor of the component
+            winPeer.removeDropTarget(dt);
+        } else {
+            synchronized (dropTargetLock){
+                // 10-14-02 VL: Windows WComponentPeer would add (or remove) the drop target only
+                // if it's the first (or last) one for the component. Otherwise this call is a no-op.
+                if (--fNumDropTargets == 0) {
+                    // Having a null drop target would be an error but let's check just in case:
+                    if (fDropTarget != null) {
+                        // Dispose of the drop target:
+                        fDropTarget.dispose();
+                        fDropTarget = null;
+                    } else
+                        System.err.println("CComponent.removeDropTarget(): current drop target is null.");
+                }
             }
         }
     }
--- a/src/macosx/classes/sun/lwawt/LWCursorManager.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWCursorManager.java	Tue May 08 07:34:53 2012 -0700
@@ -36,32 +36,34 @@
 
 public abstract class LWCursorManager {
 
-    // A flag to indicate if the update is scheduled, so we don't
-    // process it twice
-    private AtomicBoolean updatePending = new AtomicBoolean(false);
+    /**
+     * A flag to indicate if the update is scheduled, so we don't process it
+     * twice.
+     */
+    private final AtomicBoolean updatePending = new AtomicBoolean(false);
 
     protected LWCursorManager() {
     }
 
-    /*
+    /**
      * Sets the cursor to correspond the component currently under mouse.
      *
      * This method should not be executed on the toolkit thread as it
      * calls to user code (e.g. Container.findComponentAt).
      */
-    public void updateCursor() {
+    public final void updateCursor() {
         updatePending.set(false);
         updateCursorImpl();
     }
 
-    /*
+    /**
      * Schedules updating the cursor on the corresponding event dispatch
      * thread for the given window.
      *
      * This method is called on the toolkit thread as a result of a
      * native update cursor request (e.g. WM_SETCURSOR on Windows).
      */
-    public void updateCursorLater(LWWindowPeer window) {
+    public final void updateCursorLater(final LWWindowPeer window) {
         if (updatePending.compareAndSet(false, true)) {
             Runnable r = new Runnable() {
                 @Override
@@ -74,45 +76,58 @@
     }
 
     private void updateCursorImpl() {
-        LWWindowPeer windowUnderCursor = LWWindowPeer.getWindowUnderCursor();
-        Point cursorPos = getCursorPosition();
-        LWComponentPeer<?, ?> componentUnderCursor = null;
-        // TODO: it's possible to get the component under cursor directly as
-        // it's stored in LWWindowPee anyway (lastMouseEventPeer)
-        if (windowUnderCursor != null) {
-            componentUnderCursor = windowUnderCursor.findPeerAt(cursorPos.x, cursorPos.y);
+        final Point cursorPos = getCursorPosition();
+        final Component c = findComponent(cursorPos);
+        final Cursor cursor;
+        final Object peer = LWToolkit.targetToPeer(c);
+        if (peer instanceof LWComponentPeer) {
+            final LWComponentPeer<?, ?> lwpeer = (LWComponentPeer<?, ?>) peer;
+            final Point p = lwpeer.getLocationOnScreen();
+            cursor = lwpeer.getCursor(new Point(cursorPos.x - p.x,
+                                                cursorPos.y - p.y));
+        } else {
+            cursor = (c != null) ? c.getCursor() : null;
         }
-        Cursor cursor = null;
-        if (componentUnderCursor != null) {
-            Component c = componentUnderCursor.getTarget();
+        // TODO: default cursor for modal blocked windows
+        setCursor(cursor);
+    }
+
+    /**
+     * Returns the first visible, enabled and showing component under cursor.
+     *
+     * @param cursorPos Current cursor position.
+     * @return Component
+     */
+    private static final Component findComponent(final Point cursorPos) {
+        final LWComponentPeer<?, ?> peer = LWWindowPeer.getPeerUnderCursor();
+        Component c = null;
+        if (peer != null) {
+            c = peer.getTarget();
             if (c instanceof Container) {
-                Point p = componentUnderCursor.getLocationOnScreen();
-                c = ((Container)c).findComponentAt(cursorPos.x - p.x, cursorPos.y - p.y);
+                final Point p = peer.getLocationOnScreen();
+                c = ((Container) c).findComponentAt(cursorPos.x - p.x,
+                                                    cursorPos.y - p.y);
             }
-            // Traverse up to the first visible, enabled and showing component
             while (c != null) {
                 if (c.isVisible() && c.isEnabled() && (c.getPeer() != null)) {
                     break;
                 }
                 c = c.getParent();
             }
-            if (c != null) {
-                cursor = c.getCursor();
-            }
         }
-        // TODO: default cursor for modal blocked windows
-        setCursor(windowUnderCursor, cursor);
+        return c;
     }
 
-    /*
+    /**
      * Returns the current cursor position.
      */
     // TODO: make it public to reuse for MouseInfo
     protected abstract Point getCursorPosition();
 
-    /*
-     * Sets a cursor. The cursor can be null if the mouse is not over a Java window.
+    /**
+     * Sets a cursor. The cursor can be null if the mouse is not over a Java
+     * window.
+     * @param cursor the new {@code Cursor}.
      */
-    protected abstract void setCursor(LWWindowPeer windowUnderCursor, Cursor cursor);
-
+    protected abstract void setCursor(Cursor cursor);
 }
--- a/src/macosx/classes/sun/lwawt/LWRepaintArea.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWRepaintArea.java	Tue May 08 07:34:53 2012 -0700
@@ -39,12 +39,8 @@
     @Override
     protected void updateComponent(final Component comp, final Graphics g) {
         if (comp != null) {
-            final LWComponentPeer peer = (LWComponentPeer) comp.getPeer();
-            if (peer != null) {
-                peer.paintPeer(g);
-            }
             super.updateComponent(comp, g);
-            flushBuffers(peer);
+            flushBuffers((LWComponentPeer) comp.getPeer());
         }
     }
 
--- a/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -27,6 +27,7 @@
 package sun.lwawt;
 
 import java.awt.Component;
+import java.awt.Cursor;
 import java.awt.Dimension;
 import java.awt.Point;
 import java.awt.TextArea;
@@ -72,6 +73,15 @@
     }
 
     @Override
+    protected Cursor getCursor(final Point p) {
+        final boolean isContains;
+        synchronized (getDelegateLock()) {
+            isContains = getDelegate().getViewport().getBounds().contains(p);
+        }
+        return isContains ? super.getCursor(p) : null;
+    }
+
+    @Override
     protected Component getDelegateFocusOwner() {
         return getTextComponent();
     }
--- a/src/macosx/classes/sun/lwawt/LWTextFieldPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWTextFieldPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -31,6 +31,7 @@
 import java.awt.TextField;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.FocusEvent;
 import java.awt.peer.TextFieldPeer;
 
 import javax.swing.JPasswordField;
@@ -97,6 +98,21 @@
                                   getText(), e.getWhen(), e.getModifiers()));
     }
 
+    /**
+     * Restoring native behavior. We should sets the selection range to zero,
+     * when component lost its focus.
+     *
+     * @param e the focus event
+     */
+    @Override
+    protected void handleJavaFocusEvent(final FocusEvent e) {
+        if (e.getID() == FocusEvent.FOCUS_LOST) {
+            // In order to de-select the selection
+            setCaretPosition(0);
+        }
+        super.handleJavaFocusEvent(e);
+    }
+
     private final class JTextAreaDelegate extends JPasswordField {
 
         // Empty non private constructor was added because access to this
--- a/src/macosx/classes/sun/lwawt/LWWindowPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/LWWindowPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -784,9 +784,8 @@
                 }
                 mouseClickButtons &= ~eventButtonMask;
             }
-
-            notifyUpdateCursor();
         }
+        notifyUpdateCursor();
     }
 
     public void dispatchMouseWheelEvent(long when, int x, int y, int modifiers,
@@ -1057,6 +1056,10 @@
         return lastMouseEventPeer != null ? lastMouseEventPeer.getWindowPeerOrSelf() : null;
     }
 
+    public static LWComponentPeer<?, ?> getPeerUnderCursor() {
+        return lastMouseEventPeer;
+    }
+
     public boolean requestWindowFocus(CausedFocusEvent.Cause cause) {
         if (focusLog.isLoggable(PlatformLogger.FINE)) {
             focusLog.fine("requesting native focus to " + this);
--- a/src/macosx/classes/sun/lwawt/macosx/CCursorManager.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CCursorManager.java	Tue May 08 07:34:53 2012 -0700
@@ -25,24 +25,26 @@
 
 package sun.lwawt.macosx;
 
-import java.awt.*;
+import sun.lwawt.LWCursorManager;
+
+import java.awt.Cursor;
+import java.awt.Point;
 import java.awt.geom.Point2D;
 
-import sun.lwawt.*;
+final class CCursorManager extends LWCursorManager {
 
-public class CCursorManager extends LWCursorManager {
     private static native Point2D nativeGetCursorPosition();
     private static native void nativeSetBuiltInCursor(final int type, final String name);
     private static native void nativeSetCustomCursor(final long imgPtr, final double x, final double y);
 
     private static final int NAMED_CURSOR = -1;
 
-    private final static CCursorManager theInstance = new CCursorManager();
+    private static final CCursorManager theInstance = new CCursorManager();
     public static CCursorManager getInstance() {
         return theInstance;
     }
 
-    Cursor currentCursor;
+    private volatile Cursor currentCursor;
 
     private CCursorManager() { }
 
@@ -62,8 +64,11 @@
     }
 
     @Override
-    protected void setCursor(final LWWindowPeer windowUnderCursor, final Cursor cursor) {
-        if (cursor == currentCursor) return;
+    protected void setCursor(final Cursor cursor) {
+        if (cursor == currentCursor) {
+            return;
+        }
+        currentCursor = cursor;
 
         if (cursor == null) {
             nativeSetBuiltInCursor(Cursor.DEFAULT_CURSOR, null);
@@ -71,10 +76,12 @@
         }
 
         if (cursor instanceof CCustomCursor) {
-            final CCustomCursor customCursor = ((CCustomCursor)cursor);
+            final CCustomCursor customCursor = (CCustomCursor) cursor;
             final long imagePtr = customCursor.getImageData();
-            final Point hotSpot = customCursor.getHotSpot();
-            if(imagePtr != 0L) nativeSetCustomCursor(imagePtr, hotSpot.x, hotSpot.y);
+            if (imagePtr != 0L) {
+                final Point hotSpot = customCursor.getHotSpot();
+                nativeSetCustomCursor(imagePtr, hotSpot.x, hotSpot.y);
+            }
             return;
         }
 
@@ -94,13 +101,6 @@
         throw new RuntimeException("Unimplemented");
     }
 
-    static long getNativeWindow(final LWWindowPeer window) {
-        if (window == null) return 0;
-        final CPlatformWindow platformWindow = (CPlatformWindow)window.getPlatformWindow();
-        if (platformWindow == null) return 0;
-        return platformWindow.getNSWindowPtr();
-    }
-
     // package private methods to handle cursor change during drag-and-drop
     private boolean isDragging = false;
     private Point dragPos = null;
@@ -109,9 +109,7 @@
         if (isDragging) {
             throw new RuntimeException("Invalid Drag state in CCursorManager!");
         }
-
         isDragging = true;
-
         dragPos = new Point(x, y);
     }
 
--- a/src/macosx/classes/sun/lwawt/macosx/CEmbeddedFrame.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CEmbeddedFrame.java	Tue May 08 07:34:53 2012 -0700
@@ -89,12 +89,19 @@
     }
 
     public void handleKeyEvent(int eventType, int modifierFlags, String characters,
+                               String charsIgnoringMods, boolean isRepeat, short keyCode,
+                               boolean needsKeyTyped) {
+        responder.handleKeyEvent(eventType, modifierFlags, charsIgnoringMods, keyCode, needsKeyTyped);
+    }
+
+    // REMIND: delete this method once 'deploy' changes for 7156194 is pushed
+    public void handleKeyEvent(int eventType, int modifierFlags, String characters,
                                String charsIgnoringMods, boolean isRepeat, short keyCode) {
-        responder.handleKeyEvent(eventType, modifierFlags, charsIgnoringMods, keyCode);
+        handleKeyEvent(eventType, modifierFlags, characters, charsIgnoringMods, isRepeat, keyCode, true);
     }
 
     public void handleInputEvent(String text) {
-        new RuntimeException("Not implemented");
+        responder.handleInputEvent(text);
     }
 
     public void handleFocusEvent(boolean focused) {
--- a/src/macosx/classes/sun/lwawt/macosx/CImage.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CImage.java	Tue May 08 07:34:53 2012 -0700
@@ -29,10 +29,14 @@
 import java.awt.geom.Dimension2D;
 import java.awt.image.*;
 
+import java.util.Arrays;
+import java.util.List;
+
 import sun.awt.image.SunWritableRaster;
 
 public class CImage extends CFRetainedResource {
     private static native long nativeCreateNSImageFromArray(int[] buffer, int w, int h);
+    private static native long nativeCreateNSImageFromArrays(int[][] buffers, int w[], int h[]);
     private static native long nativeCreateNSImageFromFileContents(String file);
     private static native long nativeCreateNSImageOfFileFromLaunchServices(String file);
     private static native long nativeCreateNSImageFromImageName(String name);
@@ -93,8 +97,7 @@
             return createImageUsingNativeSize(nativeCreateNSImageFromImageName(name));
         }
 
-        // This is used to create a CImage from a Image
-        public CImage createFromImage(final Image image) {
+        private static int[] imageToArray(Image image) {
             if (image == null) return null;
 
             MediaTracker mt = new MediaTracker(new Label());
@@ -117,8 +120,50 @@
             g2.setComposite(AlphaComposite.Src);
             g2.drawImage(image, 0, 0, null);
             g2.dispose();
-            int[] buffer = ((DataBufferInt)bimg.getRaster().getDataBuffer()).getData();
-            return new CImage(nativeCreateNSImageFromArray(buffer, w, h));
+            return ((DataBufferInt)bimg.getRaster().getDataBuffer()).getData();
+        }
+
+        // This is used to create a CImage from a Image
+        public CImage createFromImage(final Image image) {
+            int[] buffer = imageToArray(image);
+            if (buffer == null) {
+                return null;
+            }
+            return new CImage(nativeCreateNSImageFromArray(buffer, image.getWidth(null), image.getHeight(null)));
+        }
+
+        public CImage createFromImages(List<Image> images) {
+            if (images == null || images.isEmpty()) {
+                return null;
+            }
+
+            int num = images.size();
+
+            int[][] buffers = new int[num][];
+            int[] w = new int[num];
+            int[] h = new int[num];
+
+            num = 0;
+
+            for (Image img : images) {
+                buffers[num] = imageToArray(img);
+                if (buffers[num] == null) {
+                    // Unable to process the image
+                    continue;
+                }
+                w[num] = img.getWidth(null);
+                h[num] = img.getHeight(null);
+                num++;
+            }
+
+            if (num == 0) {
+                return null;
+            }
+
+            return new CImage(nativeCreateNSImageFromArrays(
+                        Arrays.copyOf(buffers, num),
+                        Arrays.copyOf(w, num),
+                        Arrays.copyOf(h, num)));
         }
 
         static int getSelectorAsInt(final String fromString) {
--- a/src/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java	Tue May 08 07:34:53 2012 -0700
@@ -117,7 +117,7 @@
      * Handles key events.
      */
     void handleKeyEvent(int eventType, int modifierFlags, String chars,
-                        short keyCode) {
+                        short keyCode, boolean needsKeyTyped) {
         boolean isFlagsChangedEvent =
             isNpapiCallback ? (eventType == CocoaConstants.NPCocoaEventFlagsChanged) :
                               (eventType == CocoaConstants.NSFlagsChanged);
@@ -158,11 +158,24 @@
                                            NSEvent.nsToJavaEventType(eventType);
         }
 
+        char javaChar = NSEvent.nsToJavaChar(testChar, modifierFlags);
+        // Some keys may generate a KEY_TYPED, but we can't determine
+        // what that character is. That's likely a bug, but for now we
+        // just check for CHAR_UNDEFINED.
+        if (javaChar == KeyEvent.CHAR_UNDEFINED) {
+            postsTyped = false;
+        }
+
+
         int jmodifiers = NSEvent.nsToJavaKeyModifiers(modifierFlags);
         long when = System.currentTimeMillis();
 
         peer.dispatchKeyEvent(jeventType, when, jmodifiers,
-                              jkeyCode, testChar, jkeyLocation);
+                              jkeyCode, javaChar, jkeyLocation);
+
+        // Current browser may be sending input events, so don't
+        // post the KEY_TYPED here.
+        postsTyped &= needsKeyTyped;
 
         // That's the reaction on the PRESSED (not RELEASED) event as it comes to
         // appear in MacOSX.
@@ -172,8 +185,23 @@
         boolean isMetaDown = (jmodifiers & KeyEvent.META_DOWN_MASK) != 0;
         if (jeventType == KeyEvent.KEY_PRESSED && postsTyped && !isMetaDown) {
             peer.dispatchKeyEvent(KeyEvent.KEY_TYPED, when, jmodifiers,
-                                  KeyEvent.VK_UNDEFINED, testChar,
+                                  KeyEvent.VK_UNDEFINED, javaChar,
                                   KeyEvent.KEY_LOCATION_UNKNOWN);
         }
     }
+
+    void handleInputEvent(String text) {
+        if (text != null) {
+            int index = 0, length = text.length();
+            char c;
+            while (index < length) {
+                c = text.charAt(index);
+                peer.dispatchKeyEvent(KeyEvent.KEY_TYPED,
+                                      System.currentTimeMillis(),
+                                      0, KeyEvent.VK_UNDEFINED, c,
+                                      KeyEvent.KEY_LOCATION_UNKNOWN);
+                index++;
+            }
+        }
+    }
 }
--- a/src/macosx/classes/sun/lwawt/macosx/CPlatformView.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CPlatformView.java	Tue May 08 07:34:53 2012 -0700
@@ -199,7 +199,7 @@
 
     private void deliverKeyEvent(NSEvent event) {
         responder.handleKeyEvent(event.getType(), event.getModifierFlags(),
-                                 event.getCharactersIgnoringModifiers(), event.getKeyCode());
+                                 event.getCharactersIgnoringModifiers(), event.getKeyCode(), true);
     }
 
     private void deliverWindowDidExposeEvent() {
--- a/src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java	Tue May 08 07:34:53 2012 -0700
@@ -29,6 +29,7 @@
 import java.awt.*;
 import java.awt.Dialog.ModalityType;
 import java.awt.event.*;
+import java.awt.peer.WindowPeer;
 import java.beans.*;
 import java.util.List;
 
@@ -202,6 +203,9 @@
     private LWWindowPeer peer;
     private CPlatformView contentView;
     private CPlatformWindow owner;
+    private boolean visible = false; // visibility status from native perspective
+    private boolean undecorated; // initialized in getInitialStyleBits()
+    private Rectangle normalBounds = null; // not-null only for undecorated maximized windows
 
     public CPlatformWindow(final PeerType peerType) {
         super(0, true);
@@ -277,8 +281,8 @@
 
         // Either java.awt.Frame or java.awt.Dialog can be undecorated, however java.awt.Window always is undecorated.
         {
-            final boolean undecorated = isFrame ? ((Frame)target).isUndecorated() : (isDialog ? ((Dialog)target).isUndecorated() : true);
-            if (undecorated) styleBits = SET(styleBits, DECORATED, false);
+            this.undecorated = isFrame ? ((Frame)target).isUndecorated() : (isDialog ? ((Dialog)target).isUndecorated() : true);
+            if (this.undecorated) styleBits = SET(styleBits, DECORATED, false);
         }
 
         // Either java.awt.Frame or java.awt.Dialog can be resizable, however java.awt.Window is never resizable
@@ -466,19 +470,62 @@
         nativeSetNSWindowBounds(getNSWindowPtr(), x, y, w, h);
     }
 
+    private void zoom() {
+        if (!undecorated) {
+            CWrapper.NSWindow.zoom(getNSWindowPtr());
+        } else {
+            // OS X handles -zoom incorrectly for undecorated windows
+            final boolean isZoomed = this.normalBounds == null;
+            deliverZoom(isZoomed);
+
+            Rectangle toBounds;
+            if (isZoomed) {
+                this.normalBounds = peer.getBounds();
+                long screen = CWrapper.NSWindow.screen(getNSWindowPtr());
+                toBounds = CWrapper.NSScreen.visibleFrame(screen).getBounds();
+                // Flip the y coordinate
+                Rectangle frame = CWrapper.NSScreen.frame(screen).getBounds();
+                toBounds.y = frame.height - toBounds.y - toBounds.height;
+            } else {
+                toBounds = normalBounds;
+                this.normalBounds = null;
+            }
+            setBounds(toBounds.x, toBounds.y, toBounds.width, toBounds.height);
+        }
+    }
+
+    private boolean isVisible() {
+        return this.visible;
+    }
+
     @Override // PlatformWindow
     public void setVisible(boolean visible) {
         final long nsWindowPtr = getNSWindowPtr();
 
-        if (owner != null) {
-            if (!visible) {
+        // 1. Process parent-child relationship when hiding
+        if (!visible) {
+            // 1a. Unparent my children
+            for (Window w : target.getOwnedWindows()) {
+                WindowPeer p = (WindowPeer)w.getPeer();
+                if (p instanceof LWWindowPeer) {
+                    CPlatformWindow pw = (CPlatformWindow)((LWWindowPeer)p).getPlatformWindow();
+                    if (pw != null && pw.isVisible()) {
+                        CWrapper.NSWindow.removeChildWindow(nsWindowPtr, pw.getNSWindowPtr());
+                    }
+                }
+            }
+
+            // 1b. Unparent myself
+            if (owner != null && owner.isVisible()) {
                 CWrapper.NSWindow.removeChildWindow(owner.getNSWindowPtr(), nsWindowPtr);
             }
         }
 
+        // 2. Configure stuff
         updateIconImages();
         updateFocusabilityForAutoRequestFocus(false);
 
+        // 3. Manage the extended state when hiding
         if (!visible) {
             // Cancel out the current native state of the window
             switch (peer.getState()) {
@@ -486,11 +533,12 @@
                     CWrapper.NSWindow.deminiaturize(nsWindowPtr);
                     break;
                 case Frame.MAXIMIZED_BOTH:
-                    CWrapper.NSWindow.zoom(nsWindowPtr);
+                    zoom();
                     break;
             }
         }
 
+        // 4. Actually show or hide the window
         LWWindowPeer blocker = peer.getBlocker();
         if (blocker == null || !visible) {
             // If it ain't blocked, or is being hidden, go regular way
@@ -517,7 +565,9 @@
             CWrapper.NSWindow.orderWindow(nsWindowPtr, CWrapper.NSWindow.NSWindowBelow,
                     ((CPlatformWindow)blocker.getPlatformWindow()).getNSWindowPtr());
         }
+        this.visible = visible;
 
+        // 5. Manage the extended state when showing
         if (visible) {
             // Re-apply the extended state as expected in shared code
             if (target instanceof Frame) {
@@ -526,23 +576,41 @@
                         CWrapper.NSWindow.miniaturize(nsWindowPtr);
                         break;
                     case Frame.MAXIMIZED_BOTH:
-                        CWrapper.NSWindow.zoom(nsWindowPtr);
+                        zoom();
                         break;
                 }
             }
         }
 
+        // 6. Configure stuff #2
         updateFocusabilityForAutoRequestFocus(true);
 
-        if (owner != null) {
-            if (visible) {
+        // 7. Manage parent-child relationship when showing
+        if (visible) {
+            // 7a. Add myself as a child
+            if (owner != null && owner.isVisible()) {
                 CWrapper.NSWindow.addChildWindow(owner.getNSWindowPtr(), nsWindowPtr, CWrapper.NSWindow.NSWindowAbove);
                 if (target.isAlwaysOnTop()) {
                     CWrapper.NSWindow.setLevel(nsWindowPtr, CWrapper.NSWindow.NSFloatingWindowLevel);
                 }
             }
+
+            // 7b. Add my own children to myself
+            for (Window w : target.getOwnedWindows()) {
+                WindowPeer p = (WindowPeer)w.getPeer();
+                if (p instanceof LWWindowPeer) {
+                    CPlatformWindow pw = (CPlatformWindow)((LWWindowPeer)p).getPlatformWindow();
+                    if (pw != null && pw.isVisible()) {
+                        CWrapper.NSWindow.addChildWindow(nsWindowPtr, pw.getNSWindowPtr(), CWrapper.NSWindow.NSWindowAbove);
+                        if (w.isAlwaysOnTop()) {
+                            CWrapper.NSWindow.setLevel(pw.getNSWindowPtr(), CWrapper.NSWindow.NSFloatingWindowLevel);
+                        }
+                    }
+                }
+            }
         }
 
+        // 8. Deal with the blocker of the window being shown
         if (blocker != null && visible) {
             // Make sure the blocker is above its siblings
             ((CPlatformWindow)blocker.getPlatformWindow()).orderAboveSiblings();
@@ -593,11 +661,19 @@
     @Override
     public void setResizable(boolean resizable) {
         setStyleBits(RESIZABLE, resizable);
+
+        // Re-apply the size constraints and the size to ensure the space
+        // occupied by the grow box is counted properly
+        setMinimumSize(1, 1); // the method ignores its arguments
+
+        Rectangle bounds = peer.getBounds();
+        setBounds(bounds.x, bounds.y, bounds.width, bounds.height);
     }
 
     @Override
     public void setMinimumSize(int width, int height) {
         //TODO width, height should be used
+        //NOTE: setResizable() calls setMinimumSize(1,1) relaying on the logic below
         final long nsWindowPtr = getNSWindowPtr();
         final Dimension min = target.getMinimumSize();
         final Dimension max = target.getMaximumSize();
@@ -692,7 +768,7 @@
                 if (prevWindowState == Frame.MAXIMIZED_BOTH) {
                     // let's return into the normal states first
                     // the zoom call toggles between the normal and the max states
-                    CWrapper.NSWindow.zoom(nsWindowPtr);
+                    zoom();
                 }
                 CWrapper.NSWindow.miniaturize(nsWindowPtr);
                 break;
@@ -701,14 +777,14 @@
                     // let's return into the normal states first
                     CWrapper.NSWindow.deminiaturize(nsWindowPtr);
                 }
-                CWrapper.NSWindow.zoom(nsWindowPtr);
+                zoom();
                 break;
             case Frame.NORMAL:
                 if (prevWindowState == Frame.ICONIFIED) {
                     CWrapper.NSWindow.deminiaturize(nsWindowPtr);
                 } else if (prevWindowState == Frame.MAXIMIZED_BOTH) {
                     // the zoom call toggles between the normal and the max states
-                    CWrapper.NSWindow.zoom(nsWindowPtr);
+                    zoom();
                 }
                 break;
             default:
@@ -734,11 +810,7 @@
         if (icons == null || icons.size() == 0) {
             return null;
         }
-
-        // TODO: need a walk-through to find the best image.
-        // The best mean with higher resolution. Otherwise an icon looks bad.
-        final Image image = icons.get(0);
-        return CImage.getCreator().createFromImage(image);
+        return CImage.getCreator().createFromImages(icons);
     }
 
     /*
@@ -849,15 +921,23 @@
             return;
         }
 
-        // Recursively pop up the windows from the very bottom so that only
-        // the very top-most one becomes the main window
-        owner.orderAboveSiblings();
+        // NOTE: the logic will fail if we have a hierarchy like:
+        //       visible root owner
+        //          invisible owner
+        //              visible dialog
+        // However, this is an unlikely scenario for real life apps
+        if (owner.isVisible()) {
+            // Recursively pop up the windows from the very bottom so that only
+            // the very top-most one becomes the main window
+            owner.orderAboveSiblings();
 
-        // Order the window to front of the stack of child windows
-        final long nsWindowSelfPtr = getNSWindowPtr();
-        final long nsWindowOwnerPtr = owner.getNSWindowPtr();
-        CWrapper.NSWindow.removeChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr);
-        CWrapper.NSWindow.addChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr, CWrapper.NSWindow.NSWindowAbove);
+            // Order the window to front of the stack of child windows
+            final long nsWindowSelfPtr = getNSWindowPtr();
+            final long nsWindowOwnerPtr = owner.getNSWindowPtr();
+            CWrapper.NSWindow.removeChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr);
+            CWrapper.NSWindow.addChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr, CWrapper.NSWindow.NSWindowAbove);
+        }
+
         if (target.isAlwaysOnTop()) {
             CWrapper.NSWindow.setLevel(getNSWindowPtr(), CWrapper.NSWindow.NSFloatingWindowLevel);
         }
--- a/src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java	Tue May 08 07:34:53 2012 -0700
@@ -647,6 +647,15 @@
         return InputEvent.CTRL_MASK | InputEvent.ALT_MASK;
     }
 
+    /**
+     * Tests whether specified key modifiers mask can be used to enter a printable
+     * character.
+     */
+    @Override
+    public boolean isPrintableCharacterModifiersMask(int mods) {
+        return ((mods & (InputEvent.META_MASK | InputEvent.CTRL_MASK)) == 0);
+    }
+
     // Extends PeerEvent because we want to pass long an ObjC mediator object and because we want these events to be posted early
     // Typically, rather than relying on the notifier to call notifyAll(), we use the mediator to stop the runloop
     public static class CPeerEvent extends PeerEvent {
--- a/src/macosx/classes/sun/lwawt/macosx/event/NSEvent.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/lwawt/macosx/event/NSEvent.java	Tue May 08 07:34:53 2012 -0700
@@ -245,6 +245,12 @@
      */
     public static native void nsKeyModifiersToJavaKeyInfo(int[] in, int[] out);
 
+    /*
+     * There is a small number of NS characters that need to be converted
+     * into other characters before we pass them to AWT.
+     */
+    public static native char nsToJavaChar(char nsChar, int modifierFlags);
+
     public static boolean isPopupTrigger(int jmodifiers) {
         final boolean isRightButtonDown = ((jmodifiers & InputEvent.BUTTON3_DOWN_MASK) != 0);
         final boolean isLeftButtonDown = ((jmodifiers & InputEvent.BUTTON1_DOWN_MASK) != 0);
--- a/src/macosx/classes/sun/nio/ch/DefaultSelectorProvider.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/nio/ch/DefaultSelectorProvider.java	Tue May 08 07:34:53 2012 -0700
@@ -4,7 +4,9 @@
  *
  * 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.
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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
@@ -40,7 +42,7 @@
      * Returns the default SelectorProvider.
      */
     public static SelectorProvider create() {
-            return new sun.nio.ch.PollSelectorProvider();
+        return new sun.nio.ch.KQueueSelectorProvider();
     }
 
 }
--- a/src/macosx/classes/sun/nio/ch/KQueueArrayWrapper.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/nio/ch/KQueueArrayWrapper.java	Tue May 08 07:34:53 2012 -0700
@@ -4,7 +4,9 @@
  *
  * 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.
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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
@@ -64,8 +66,8 @@
     static short FD_OFFSET;
     static short FILTER_OFFSET;
 
-    // kevent array size (just under 1K bytes)
-    static final int NUM_KEVENTS = 50;
+    // kevent array size
+    static final int NUM_KEVENTS = 128;
 
     // Are we in a 64-bit VM?
     static boolean is64bit = false;
--- a/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -4,7 +4,9 @@
  *
  * 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.
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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
@@ -49,8 +51,8 @@
     // Count of registered descriptors (including interrupt)
     private int totalChannels;
 
-    // Map from file descriptors to selection keys
-    private HashMap<Integer,SelectionKeyImpl> fdToKey;
+    // Map from a file descriptor to an entry containing the selection key
+    private HashMap<Integer,MapEntry> fdMap;
 
     // True if this Selector has been closed
     private boolean closed = false;
@@ -59,6 +61,20 @@
     private Object interruptLock = new Object();
     private boolean interruptTriggered = false;
 
+    // used by updateSelectedKeys to handle cases where the same file
+    // descriptor is polled by more than one filter
+    private long updateCount;
+
+    // Used to map file descriptors to a selection key and "update count"
+    // (see updateSelectedKeys for usage).
+    private static class MapEntry {
+        SelectionKeyImpl ski;
+        long updateCount;
+        MapEntry(SelectionKeyImpl ski) {
+            this.ski = ski;
+        }
+    }
+
     /**
      * Package private constructor called by factory method in
      * the abstract superclass Selector.
@@ -70,7 +86,7 @@
         fd1 = (int)fds;
         kqueueWrapper = new KQueueArrayWrapper();
         kqueueWrapper.initInterrupt(fd0, fd1);
-        fdToKey = new HashMap<>();
+        fdMap = new HashMap<>();
         totalChannels = 1;
     }
 
@@ -82,8 +98,6 @@
         if (closed)
             throw new ClosedSelectorException();
         processDeregisterQueue();
-        if (timeout == 0  &&  totalChannels == 1)
-            return 0;
         try {
             begin();
             entries = kqueueWrapper.poll(timeout);
@@ -94,10 +108,9 @@
         return updateSelectedKeys(entries);
     }
 
-
     /**
-     * Update the keys whose fd's have been selected by the devpoll
-     * driver. Add the ready keys to the ready queue.
+     * Update the keys whose fd's have been selected by kqueue.
+     * Add the ready keys to the selected key set.
      * If the interrupt fd has been selected, drain it and clear the interrupt.
      */
     private int updateSelectedKeys(int entries)
@@ -106,24 +119,42 @@
         int numKeysUpdated = 0;
         boolean interrupted = false;
 
+        // A file descriptor may be registered with kqueue with more than one
+        // filter and so there may be more than one event for a fd. The update
+        // count in the MapEntry tracks when the fd was last updated and this
+        // ensures that the ready ops are updated rather than replaced by a
+        // second or subsequent event.
+        updateCount++;
+
         for (int i = 0; i < entries; i++) {
             int nextFD = kqueueWrapper.getDescriptor(i);
             if (nextFD == fd0) {
                 interrupted = true;
             } else {
-                SelectionKeyImpl ski = fdToKey.get(new Integer(nextFD));
-                // ski is null in the case of an interrupt
-                if (ski != null) {
+                MapEntry me = fdMap.get(Integer.valueOf(nextFD));
+
+                // entry is null in the case of an interrupt
+                if (me != null) {
                     int rOps = kqueueWrapper.getReventOps(i);
+                    SelectionKeyImpl ski = me.ski;
                     if (selectedKeys.contains(ski)) {
-                        if (ski.channel.translateAndSetReadyOps(rOps, ski)) {
-                            numKeysUpdated++;
+                        // first time this file descriptor has been encountered on this
+                        // update?
+                        if (me.updateCount != updateCount) {
+                            if (ski.channel.translateAndSetReadyOps(rOps, ski)) {
+                                numKeysUpdated++;
+                                me.updateCount = updateCount;
+                            }
+                        } else {
+                            // ready ops have already been set on this update
+                            ski.channel.translateAndUpdateReadyOps(rOps, ski);
                         }
                     } else {
                         ski.channel.translateAndSetReadyOps(rOps, ski);
-                        if ((ski.readyOps() & ski.interestOps()) != 0) {
+                        if ((ski.nioReadyOps() & ski.nioInterestOps()) != 0) {
                             selectedKeys.add(ski);
                             numKeysUpdated++;
+                            me.updateCount = updateCount;
                         }
                     }
                 }
@@ -137,7 +168,6 @@
                 interruptTriggered = false;
             }
         }
-
         return numKeysUpdated;
     }
 
@@ -145,6 +175,12 @@
     protected void implClose() throws IOException {
         if (!closed) {
             closed = true;
+
+            // prevent further wakeup
+            synchronized (interruptLock) {
+                interruptTriggered = true;
+            }
+
             FileDispatcherImpl.closeIntFD(fd0);
             FileDispatcherImpl.closeIntFD(fd1);
             if (kqueueWrapper != null) {
@@ -172,8 +208,10 @@
 
 
     protected void implRegister(SelectionKeyImpl ski) {
+        if (closed)
+            throw new ClosedSelectorException();
         int fd = IOUtil.fdVal(ski.channel.getFD());
-        fdToKey.put(new Integer(fd), ski);
+        fdMap.put(Integer.valueOf(fd), new MapEntry(ski));
         totalChannels++;
         keys.add(ski);
     }
@@ -181,7 +219,7 @@
 
     protected void implDereg(SelectionKeyImpl ski) throws IOException {
         int fd = ski.channel.getFDVal();
-        fdToKey.remove(new Integer(fd));
+        fdMap.remove(Integer.valueOf(fd));
         kqueueWrapper.release(fd);
         totalChannels--;
         keys.remove(ski);
@@ -194,6 +232,8 @@
 
 
     public void putEventOps(SelectionKeyImpl ski, int ops) {
+        if (closed)
+            throw new ClosedSelectorException();
         int fd = IOUtil.fdVal(ski.channel.getFD());
         kqueueWrapper.setInterest(fd, ops);
     }
--- a/src/macosx/classes/sun/nio/ch/KQueueSelectorProvider.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/classes/sun/nio/ch/KQueueSelectorProvider.java	Tue May 08 07:34:53 2012 -0700
@@ -4,7 +4,9 @@
  *
  * 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.
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/macosx/lib/content-types.properties	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,276 @@
+#sun.net.www MIME content-types table
+#
+# Property fields:
+#
+#   <description> ::= 'description' '=' <descriptive string>
+#    <extensions> ::= 'file_extensions' '=' <comma-delimited list, include '.'>
+#         <image> ::= 'icon' '=' <filename of icon image>
+#        <action> ::= 'browser' | 'application' | 'save' | 'unknown'
+#   <application> ::= 'application' '=' <command line template>
+#
+
+#
+# The "we don't know anything about this data" type(s).
+# Used internally to mark unrecognized types.
+#
+content/unknown: description=Unknown Content
+unknown/unknown: description=Unknown Data Type
+
+#
+# The template we should use for temporary files when launching an application
+# to view a document of given type.
+#
+temp.file.template: /tmp/%s
+
+#
+# The "real" types.
+#
+application/octet-stream: \
+	description=Generic Binary Stream;\
+	file_extensions=.saveme,.dump,.hqx,.arc,.o,.a,.bin,.exe,.z,.gz
+
+application/oda: \
+	description=ODA Document;\
+	file_extensions=.oda
+
+application/pdf: \
+	description=Adobe PDF Format;\
+	file_extensions=.pdf
+
+application/postscript: \
+	description=Postscript File;\
+	file_extensions=.eps,.ai,.ps;\
+	icon=ps;\
+	action=application;\
+	application=imagetool %s
+
+application/x-dvi: \
+	description=TeX DVI File;\
+	file_extensions=.dvi;\
+	action=application;\
+	application=xdvi %s
+
+application/x-hdf: \
+	description=Hierarchical Data Format;\
+	file_extensions=.hdf;\
+	action=save
+
+application/x-latex: \
+	description=LaTeX Source;\
+	file_extensions=.latex
+
+application/x-netcdf: \
+	description=Unidata netCDF Data Format;\
+	file_extensions=.nc,.cdf;\
+	action=save
+
+application/x-tex: \
+	description=TeX Source;\
+	file_extensions=.tex
+
+application/x-texinfo: \
+	description=Gnu Texinfo;\
+	file_extensions=.texinfo,.texi
+
+application/x-troff: \
+	description=Troff Source;\
+	file_extensions=.t,.tr,.roff;\
+	action=application;\
+	application=xterm -title troff -e sh -c \"nroff %s | col | more -w\"
+
+application/x-troff-man: \
+	description=Troff Manpage Source;\
+	file_extensions=.man;\
+	action=application;\
+	application=xterm -title troff -e sh -c \"nroff -man %s | col | more -w\"
+
+application/x-troff-me: \
+	description=Troff ME Macros;\
+	file_extensions=.me;\
+	action=application;\
+	application=xterm -title troff -e sh -c \"nroff -me %s | col | more -w\"
+
+application/x-troff-ms: \
+	description=Troff MS Macros;\
+	file_extensions=.ms;\
+	action=application;\
+	application=xterm -title troff -e sh -c \"nroff -ms %s | col | more -w\"
+
+application/x-wais-source: \
+	description=Wais Source;\
+	file_extensions=.src,.wsrc
+
+application/zip: \
+	description=Zip File;\
+	file_extensions=.zip;\
+	icon=zip;\
+	action=save
+
+application/x-bcpio: \
+	description=Old Binary CPIO Archive;\
+	file_extensions=.bcpio; action=save
+
+application/x-cpio: \
+	description=Unix CPIO Archive;\
+	file_extensions=.cpio; action=save
+
+application/x-gtar: \
+	description=Gnu Tar Archive;\
+	file_extensions=.gtar;\
+	icon=tar;\
+	action=save
+
+application/x-shar: \
+	description=Shell Archive;\
+	file_extensions=.sh,.shar;\
+	action=save
+
+application/x-sv4cpio: \
+	description=SVR4 CPIO Archive;\
+	file_extensions=.sv4cpio; action=save
+
+application/x-sv4crc: \
+	description=SVR4 CPIO with CRC;\
+	file_extensions=.sv4crc; action=save
+
+application/x-tar: \
+	description=Tar Archive;\
+	file_extensions=.tar;\
+	icon=tar;\
+	action=save
+
+application/x-ustar: \
+	description=US Tar Archive;\
+	file_extensions=.ustar;\
+	action=save
+
+audio/basic: \
+	description=Basic Audio;\
+	file_extensions=.snd,.au;\
+	icon=audio;\
+	action=application;\
+	application=audiotool %s
+
+audio/x-aiff: \
+	description=Audio Interchange Format File;\
+	file_extensions=.aifc,.aif,.aiff;\
+	icon=aiff
+
+audio/x-wav: \
+	description=Wav Audio;\
+	file_extensions=.wav;\
+	icon=wav
+
+image/gif: \
+	description=GIF Image;\
+	file_extensions=.gif;\
+	icon=gif;\
+	action=browser
+
+image/ief: \
+	description=Image Exchange Format;\
+	file_extensions=.ief
+
+image/jpeg: \
+	description=JPEG Image;\
+	file_extensions=.jfif,.jfif-tbnl,.jpe,.jpg,.jpeg;\
+	icon=jpeg;\
+	action=browser;\
+	application=imagetool %s
+
+image/tiff: \
+	description=TIFF Image;\
+	file_extensions=.tif,.tiff;\
+	icon=tiff
+
+image/vnd.fpx: \
+	description=FlashPix Image;\
+	file_extensions=.fpx,.fpix
+
+image/x-cmu-rast: \
+	description=CMU Raster Image;\
+	file_extensions=.ras
+
+image/x-portable-anymap: \
+	description=PBM Anymap Format;\
+	file_extensions=.pnm
+
+image/x-portable-bitmap: \
+	description=PBM Bitmap Format;\
+	file_extensions=.pbm
+
+image/x-portable-graymap: \
+	description=PBM Graymap Format;\
+	file_extensions=.pgm
+
+image/x-portable-pixmap: \
+	description=PBM Pixmap Format;\
+	file_extensions=.ppm
+
+image/x-rgb: \
+	description=RGB Image;\
+	file_extensions=.rgb
+
+image/x-xbitmap: \
+	description=X Bitmap Image;\
+	file_extensions=.xbm,.xpm
+
+image/x-xwindowdump: \
+	description=X Window Dump Image;\
+	file_extensions=.xwd
+
+image/png: \
+	description=PNG Image;\
+	file_extensions=.png;\
+	icon=png;\
+	action=browser
+
+text/html: \
+	description=HTML Document;\
+	file_extensions=.htm,.html;\
+	icon=html
+
+text/plain: \
+	description=Plain Text;\
+	file_extensions=.text,.c,.cc,.c++,.h,.pl,.txt,.java,.el;\
+	icon=text;\
+	action=browser
+
+text/tab-separated-values: \
+	description=Tab Separated Values Text;\
+	file_extensions=.tsv
+
+text/x-setext: \
+	description=Structure Enhanced Text;\
+	file_extensions=.etx
+
+video/mpeg: \
+	description=MPEG Video Clip;\
+	file_extensions=.mpg,.mpe,.mpeg;\
+	icon=mpeg;\
+	action=application;\
+	application=mpeg_play %s
+
+video/quicktime: \
+	description=QuickTime Video Clip;\
+	file_extensions=.mov,.qt
+
+application/x-troff-msvideo: \
+	description=AVI Video;\
+	file_extensions=.avi;\
+	icon=avi
+
+video/x-sgi-movie: \
+	description=SGI Movie;\
+	file_extensions=.movie,.mv
+
+message/rfc822: \
+	description=Internet Email Message;\
+	file_extensions=.mime
+
+application/xml: \
+	description=XML document;\
+	file_extensions=.xml
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/macosx/lib/flavormap.properties	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,78 @@
+#
+# This properties file is used to initialize the default
+# java.awt.datatransfer.SystemFlavorMap. It contains the X11 platform-specific,
+# default mappings between common X11 selection atoms and platform-independent
+# MIME type strings, which will be converted into
+# java.awt.datatransfer.DataFlavors.
+#
+# These default mappings may be augmented by specifying the
+#
+#       AWT.DnD.flavorMapFileURL 
+#
+# property in the appropriate awt.properties file. The specified properties URL
+# will be loaded into the SystemFlavorMap.
+#
+# The standard format is:
+#
+# <native>=<MIME type>
+#
+# <native> should be a string identifier that the native platform will
+# recognize as a valid data format. <MIME type> should specify both a MIME
+# primary type and a MIME subtype separated by a '/'. The MIME type may include
+# parameters, where each parameter is a key/value pair separated by '=', and
+# where each parameter to the MIME type is separated by a ';'.
+#
+# Because SystemFlavorMap implements FlavorTable, developers are free to
+# duplicate both native keys and DataFlavor values. If a mapping contains a
+# duplicate key or value, earlier mappings which included this key or value
+# will be preferred.
+#
+# Mappings whose values specify DataFlavors with primary MIME types of
+# "text", and which support the charset parameter, should specify the exact
+# format in which the native platform expects the data. The "charset"
+# parameter specifies the char to byte encoding, the "eoln" parameter
+# specifies the end-of-line marker, and the "terminators" parameter specifies
+# the number of terminating NUL bytes. Note that "eoln" and "terminators"
+# are not standardized MIME type parameters. They are specific to this file
+# format ONLY. They will not appear in any of the DataFlavors returned by the
+# SystemFlavorMap at the Java level.
+#
+# If the "charset" parameter is omitted, or has zero length, the platform
+# default encoding is assumed. If the "eoln" parameter is omitted, or has
+# zero length, "\n" is assumed. If the "terminators" parameter is omitted,
+# or has a value less than zero, zero is assumed.
+#
+# Upon initialization, the data transfer subsystem will record the specified
+# details of the native text format, but the default SystemFlavorMap will
+# present a large set of synthesized DataFlavors which map, in both
+# directions, to the native. After receiving data from the application in one
+# of the synthetic DataFlavors, the data transfer subsystem will transform
+# the data stream into the format specified in this file before passing the
+# transformed stream to the native system.
+#
+# Mappings whose values specify DataFlavors with primary MIME types of
+# "text", but which do not support the charset parameter, will be treated as
+# opaque, 8-bit data. They will not undergo any transformation process, and
+# any "charset", "eoln", or "terminators" parameters specified in this file
+# will be ignored.
+#
+# See java.awt.datatransfer.DataFlavor.selectBestTextFlavor for a list of
+# text flavors which support the charset parameter.
+
+UTF8_STRING=text/plain;charset=UTF-8;eoln="\n";terminators=0
+
+# The COMPOUND_TEXT support for inter-client text transfer is disabled by 
+# default. The reason is that many native applications prefer this format over 
+# other native text formats, but are unable to decode the textual data in this 
+# format properly. This results in java-to-native text transfer failures.
+# To enable the COMPOUND_TEXT support for this JRE installation uncomment 
+# the line below.
+
+# COMPOUND_TEXT=text/plain;charset=x-compound-text;eoln="\n";terminators=0
+
+TEXT=text/plain;eoln="\n";terminators=0
+STRING=text/plain;charset=UTF-8;eoln="\n";terminators=0
+FILE_NAME=application/x-java-file-list;class=java.util.List
+text/uri-list=application/x-java-file-list;class=java.util.List
+PNG=image/x-java-image;class=java.awt.Image
+JFIF=image/x-java-image;class=java.awt.Image
--- a/src/macosx/native/sun/awt/AWTEvent.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/AWTEvent.m	Tue May 08 07:34:53 2012 -0700
@@ -124,7 +124,7 @@
     {0x32, YES, KL_STANDARD, java_awt_event_KeyEvent_VK_BACK_QUOTE},
     {0x33, YES, KL_STANDARD, java_awt_event_KeyEvent_VK_BACK_SPACE},
     {0x34, YES, KL_NUMPAD,   java_awt_event_KeyEvent_VK_ENTER},
-    {0x35, NO,  KL_STANDARD, java_awt_event_KeyEvent_VK_ESCAPE},
+    {0x35, YES, KL_STANDARD, java_awt_event_KeyEvent_VK_ESCAPE},
     {0x36, NO,  KL_UNKNOWN,  java_awt_event_KeyEvent_VK_UNDEFINED},
     {0x37, NO,  KL_UNKNOWN,  java_awt_event_KeyEvent_VK_META},      // ****
     {0x38, NO,  KL_UNKNOWN,  java_awt_event_KeyEvent_VK_SHIFT},     // ****
@@ -308,6 +308,9 @@
  * Almost all unicode characters just go from NS to Java with no translation.
  *  For the few exceptions, we handle it here with this small table.
  */
+#define ALL_NS_KEY_MODIFIERS_MASK \
+    (NSShiftKeyMask | NSControlKeyMask | NSAlternateKeyMask | NSCommandKeyMask)
+
 static struct _char {
     NSUInteger modifier;
     unichar nsChar;
@@ -315,17 +318,17 @@
 }
 const charTable[] = {
     // map enter on keypad to same as return key
-    {0,              NSEnterCharacter,          NSNewlineCharacter},
+    {0,                         NSEnterCharacter,          NSNewlineCharacter},
 
     // [3134616] return newline instead of carriage return
-    {0,              NSCarriageReturnCharacter, NSNewlineCharacter},
+    {0,                         NSCarriageReturnCharacter, NSNewlineCharacter},
 
     // "delete" means backspace in Java
-    {0,              NSDeleteCharacter,         NSBackspaceCharacter},
-    {0,              NSDeleteFunctionKey,     NSDeleteCharacter},
+    {ALL_NS_KEY_MODIFIERS_MASK, NSDeleteCharacter,         NSBackspaceCharacter},
+    {ALL_NS_KEY_MODIFIERS_MASK, NSDeleteFunctionKey,       NSDeleteCharacter},
 
     // back-tab is only differentiated from tab by Shift flag
-    {NSShiftKeyMask, NSBackTabCharacter,     NSTabCharacter},
+    {NSShiftKeyMask,            NSBackTabCharacter,        NSTabCharacter},
 
     {0, 0, 0}
 };
@@ -334,12 +337,8 @@
 NsCharToJavaChar(unichar nsChar, NSUInteger modifiers)
 {
     const struct _char *cur;
-    NSUInteger keyModifierFlags =
-        NSShiftKeyMask | NSControlKeyMask |
-        NSAlternateKeyMask | NSCommandKeyMask;
-
     // Mask off just the keyboard modifiers from the event modifier mask.
-    NSUInteger testableFlags = (modifiers & keyModifierFlags);
+    NSUInteger testableFlags = (modifiers & ALL_NS_KEY_MODIFIERS_MASK);
 
     // walk through table & find the match
     for (cur = charTable; cur->nsChar != 0 ; cur++) {
@@ -507,189 +506,6 @@
     return javaModifiers;
 }
 
-/*
- * Returns the correct java character for a key event.  Most unicode
- * characters don't require any fussing, but a few seem to need adjusting,
- * see nsCharToJavaChar.
- */
-static unichar
-GetJavaCharacter(NSEvent *event, unsigned int index)
-{
-    unichar returnValue = java_awt_event_KeyEvent_CHAR_UNDEFINED;
-    NSString *chars = nil;
-    unichar testChar = 0, testDeadChar = 0;
-    jint javaModifiers = NsKeyModifiersToJavaModifiers([event modifierFlags]);
-
-    switch ([event type]) {
-    case NSFlagsChanged:
-        // no character for modifier keys
-        returnValue = java_awt_event_KeyEvent_CHAR_UNDEFINED;
-        break;
-
-    case NSKeyDown:
-    case NSKeyUp:
-        chars = [event characters];
-        if ([chars length] > 0) {
-            testChar = [chars characterAtIndex:index];
-        }
-
-        if (javaModifiers == 0) {
-            // TODO: uses SPI...
-            //if (TSMGetDeadKeyState() != 0) {
-            //    testDeadChar = [self deadKeyCharacter];
-            //}
-        }
-
-        if (testChar != 0) {
-            returnValue = NsCharToJavaChar(testChar, [event modifierFlags]);
-        } else if (testDeadChar != 0) {
-            returnValue = NsCharToJavaChar(testDeadChar, [event modifierFlags]);
-        } else {
-            returnValue = java_awt_event_KeyEvent_CHAR_UNDEFINED;
-        }
-        break;
-
-    default:
-        //[NSException raise:@"AWT error" format:@"Attempt to get character code from non-key event!"];
-        break;
-    }
-
-    return returnValue;
-}
-
-/*
-static jchar
-GetDeadKeyCharacter(NSEvent *event)
-{
-    // If the current event is not a dead key, return 0.
-    // TODO: this uses SPI; it's an optimization but not strictly necessary
-    //if (TSMGetDeadKeyState() == 0) {
-    //    return 0;
-    //}
-
-    // AppKit does not track dead-key states directly, but TSM does. Even then,
-    // it's not necessarily all that accurate, because the dead key can change
-    // given some combination of modifier keys on certain layouts.
-    // As a result, finding the unicode value for the front end of the dead
-    // key is a bit of a heuristic.
-
-    // This algorithm was suggested by Aki Inoue.
-    // When you get a dead key, you need to simiulate what would happen in
-    // the current dead-key and modifier state if the user hit the spacebar.
-    // That will tell you the front end of the dead-key combination.
-
-    unichar returnValue = 0;
-    const UInt16 VIRTUAL_KEY_SPACE = 49;
-    UInt32 deadKeyState = 0;
-    UInt32 appkitFlags = [event modifierFlags];
-    UniCharCount actualStringLength;
-    UniChar unicodeInputString[16];
-    TISInputSourceRef keyLayout;
-    const void *chrData;
-
-    keyLayout = TISCopyCurrentKeyboardLayoutInputSource();
-    CFDataRef cfUchrData =
-        TISGetInputSourceProperty(keyLayout, kTISPropertyUnicodeKeyLayoutData);
-
-    if (cfUchrData == NULL) {
-        return returnValue;
-    }
-
-    // The actual 'uchr' table is inside the CFDataRef.
-    chrData = CFDataGetBytePtr(cfUchrData);
-
-    UInt8 keyboardType = LMGetKbdType();
-    UInt32 keyEventModifiers = 0;
-    if (appkitFlags & NSShiftKeyMask)      keyEventModifiers |= shiftKey;
-    if (appkitFlags & NSCommandKeyMask)    keyEventModifiers |= cmdKey;
-    if (appkitFlags & NSAlphaShiftKeyMask) keyEventModifiers |= alphaLock;
-    if (appkitFlags & NSControlKeyMask)    keyEventModifiers |= controlKey;
-    if (appkitFlags & NSAlternateKeyMask)  keyEventModifiers |= optionKey;
-
-    if (noErr == UCKeyTranslate(chrData,
-        VIRTUAL_KEY_SPACE,
-        ([event type] == NSKeyDown ? kUCKeyActionDown : kUCKeyActionUp),
-        keyEventModifiers,
-        keyboardType,
-        kUCKeyTranslateNoDeadKeysMask,
-        &deadKeyState,
-        16,
-        &actualStringLength,
-        unicodeInputString))
-    {
-        if (actualStringLength > 0) {
-            returnValue = unicodeInputString[0];
-        }
-    }
-
-    return returnValue;
-}
-*/
-
-
-// REMIND: The fix for MACOSX_PORT-539 introduces Java-level implementation
-// of the function below (see CPlatformResponder). Consider removing this code.
-
-void
-DeliverJavaKeyEvent(JNIEnv *env, NSEvent *event, jobject peer)
-{
-    jint javaKeyType = java_awt_event_KeyEvent_KEY_PRESSED;
-    jint javaKeyCode = java_awt_event_KeyEvent_VK_UNDEFINED;
-    jint javaKeyLocation = java_awt_event_KeyEvent_KEY_LOCATION_UNKNOWN;
-    NSString *chars = nil;
-    BOOL postsTyped;
-    unichar testChar = java_awt_event_KeyEvent_CHAR_UNDEFINED;
-    unichar testDeadChar = 0;
-    jint javaModifiers = 0;
-
-    switch ([event type]) {
-    case NSFlagsChanged:
-        NsKeyModifiersToJavaKeyInfo([event modifierFlags],
-                                    [event keyCode],
-                                    &javaKeyCode,
-                                    &javaKeyLocation,
-                                    &javaKeyType);
-        break;
-
-    case NSKeyDown:
-    case NSKeyUp:
-        chars = [event charactersIgnoringModifiers];
-        if ([chars length] > 0) {
-            testChar = [chars characterAtIndex:0];
-        }
-
-        javaModifiers = NsKeyModifiersToJavaModifiers([event modifierFlags]);
-        if (javaModifiers == 0) {
-      // TODO: dead key chars
-//            testDeadChar = GetDeadKeyCharacter(event);
-        }
-
-        NsCharToJavaVirtualKeyCode(testChar, testDeadChar,
-                                   [event modifierFlags], [event keyCode],
-                                   &javaKeyCode, &javaKeyLocation, &postsTyped);
-        if( !postsTyped ) {
-            testChar = java_awt_event_KeyEvent_CHAR_UNDEFINED;
-        }
-
-        javaKeyType = ([event type] == NSKeyDown) ?
-            java_awt_event_KeyEvent_KEY_PRESSED :
-            java_awt_event_KeyEvent_KEY_RELEASED;
-        break;
-
-    default:
-        //[NSException raise:@"AWT error" format:@"Attempt to get virtual key code from non-key event!"];
-        break;
-    }
-
-    if (env != NULL) {
-        static JNF_CLASS_CACHE(jc_CPlatformView, "sun/lwawt/macosx/CPlatformView");
-        static JNF_MEMBER_CACHE(jm_deliverKeyEvent, jc_CPlatformView, "deliverKeyEvent", "(IICII)V");
-        JNFCallVoidMethod(env, peer, jm_deliverKeyEvent,
-                          javaKeyType, javaModifiers,
-                          testChar, javaKeyCode, javaKeyLocation);
-    }
-}
-
 jint GetJavaMouseModifiers(NSInteger button, NSUInteger modifierFlags)
 {
     // Mousing needs the key modifiers
@@ -726,217 +542,6 @@
     return modifiers;
 }
 
-/*
- * Converts an NSEvent button number to a MouseEvent constant.
- */
-static jint
-NSButtonToJavaButton(NSInteger nsButtonNumber)
-{
-    jint jbutton = java_awt_event_MouseEvent_NOBUTTON;
-
-    if (nsButtonNumber == 0) { // left
-        jbutton = java_awt_event_MouseEvent_BUTTON1;
-    } else if (nsButtonNumber == 1) { // right
-        jbutton = java_awt_event_MouseEvent_BUTTON3;
-    } else if (nsButtonNumber == 2) { // middle
-        jbutton = java_awt_event_MouseEvent_BUTTON2;
-    }
-
-    return jbutton;
-}
-
-
-static BOOL isDragging = NO;
-
-void
-DeliverMouseClickedEvent(JNIEnv *env, NSEvent *event, jobject peer)
-{
-    NSPoint pt = [event locationInWindow];
-    NSPoint pOnScreen = [NSEvent mouseLocation];
-    jint etype = java_awt_event_MouseEvent_MOUSE_CLICKED;
-    jint modifiers = GetJavaMouseModifiers([event buttonNumber], [event modifierFlags]);
-    jint clickCount = [event clickCount];
-    jint button = NSButtonToJavaButton([event buttonNumber]);
-
-    if (env != NULL) {
-        static JNF_CLASS_CACHE(jc_CPlatformView, "sun/lwawt/macosx/CPlatformView");
-        static JNF_MEMBER_CACHE(jm_deliverMouseEvent, jc_CPlatformView,
-                                "deliverMouseEvent", "(IIIIFFFF)V");
-        JNFCallVoidMethod(env, peer, jm_deliverMouseEvent,
-                          etype, modifiers,
-                          clickCount, button,
-                          pt.x, pt.y,
-                          pOnScreen.x, pOnScreen.y);
-    }
-}
-
-/*
- * After every key down event, this is called to make the matching
- * KEY_TYPED (if this key posts those).  We use the same NSEvent for it,
- * but create a KEY_TYPED java event this time.
- * If this key doesn't post typed, we don't post the event.
- *
- * TODO: some duplicated effort here; could just fold it
- * into DeliverJavaKeyEvent...
- */
-static void
-DeliverKeyTypedEvents(JNIEnv *env, NSEvent *nsEvent, jobject peer)
-{
-    if (peer == NULL) {
-        return;
-    }
-
-    jint javaKeyCode, javaKeyLocation;
-    BOOL postsTyped = NO;
-    unichar testChar, testDeadChar = 0;
-    jint javaModifiers = NsKeyModifiersToJavaModifiers([nsEvent modifierFlags]);
-
-    if (javaModifiers == 0) {
-        testDeadChar = [nsEvent deadKeyCharacter];
-    }
-
-    NSString *theChars = [nsEvent characters];
-    unsigned i, stringLength = [theChars length];
-
-    for (i = 0; i < stringLength; i++) {
-        testChar = [theChars characterAtIndex:i];
-        NsCharToJavaVirtualKeyCode(testChar, testDeadChar,
-                                   [nsEvent modifierFlags], [nsEvent keyCode],
-                                   &javaKeyCode, &javaKeyLocation, &postsTyped);
-
-        if (postsTyped) {
-            // Some keys may generate a KEY_TYPED, but we can't determine
-            // what that character is. That's likely a bug, but for now we
-            // just check for CHAR_UNDEFINED.
-            unichar theChar = GetJavaCharacter(nsEvent, i);
-            if (theChar != java_awt_event_KeyEvent_CHAR_UNDEFINED) {
-                if (env != NULL) {
-                    static JNF_CLASS_CACHE(jc_CPlatformView,
-                                           "sun/lwawt/macosx/CPlatformView");
-                    static JNF_MEMBER_CACHE(jm_deliverKeyEvent, jc_CPlatformView,
-                                            "deliverKeyEvent", "(IICII)V");
-                    JNFCallVoidMethod(env, peer, jm_deliverKeyEvent,
-                                      java_awt_event_KeyEvent_KEY_TYPED,
-                                      javaModifiers,
-                                      theChar,
-                                      java_awt_event_KeyEvent_VK_UNDEFINED,
-                                      java_awt_event_KeyEvent_KEY_LOCATION_UNKNOWN);
-                }
-            }
-        }
-    }
-}
-
-/*
- * There are a couple of extra events that Java expects to get that don't
- * actually correspond to a direct NSEvent, KEY_TYPED and MOUSE_CLICKED are
- * both extra events that are sort of redundant with ordinary
- * key downs and mouse ups.  In this extra message, we take the original
- * input event and if necessary, cons up a special follow-on event which
- * we dispatch over to Java.
- *
- * For Java, keyDown's generate a KeyPressed (for each hardware key as it
- * goes down) and then a "logical KeyTyped" event for the key event. (So
- * a shift-a generates two presses, one keytyped of "A", and then two
- * releases).  The standard event utility function converts a key down to
- * a key pressed. When appropriate, we need to cons up another event
- * (KEY_TYPED) to follow a keyDown.
- *
- * Java expects you to send a clicked event if you got a down & up, with no
- * intervening drag. So in addition to the MOUSE_RELEASED event that a
- * mouseUp is translated to, we also have to cons up a MOUSE_CLICKED event
- * for that case. Mike Paquette, god of Window Server event handling,
- * confirmed this fact about how to determine if a mouse up event had an
- * intervening drag:
- * An initial mouse-down gets a click count of 1. Subsequent left or right
- * mouse-downs within the space/time tolerance limits increment the click
- * count.  A mouse-up will have the clickCount of the last mouseDown if
- * mouse is not outside the tolerance limits, but 0 otherwise.  Thus, a
- * down-up sequence without any intervening drag will have a click count
- * of 0 in the mouse-up event.  NOTE: The problem with this is that
- * clickCount goes to zero after some point in time. So a long, click &
- * hold without moving and then release the mouse doesn't create a
- * MOUSE_CLICK event as it should. Java AWT now tracks the drag state itself.
- *
- * As another add-on, we also check for the status of mouse-motion events
- * after a mouse-down, so we know whether to generate mouse-dragged events
- * during this down sequence.
- */
-void
-SendAdditionalJavaEvents(JNIEnv *env, NSEvent *nsEvent, jobject peer)
-{
-    AWT_ASSERT_APPKIT_THREAD;
-
-    NSEventType type = [nsEvent type];
-    switch (type) {
-    case NSKeyDown:
-        break;
-
-    case NSLeftMouseUp:
-    case NSRightMouseUp:
-    case NSOtherMouseUp:
-        // TODO: we may need to pull in changedDragToMove here...
-        //if (!isDragging && ([NSViewAWT changedDragToMove]==NO)) {
-        if (!isDragging) {
-            // got down/up pair with no dragged in between; ignores drag events
-            // that have been morphed to move events
-            DeliverMouseClickedEvent(env, nsEvent, peer);
-        }
-        break;
-
-// TODO: to be implemented...
-#if 0
-    case NSLeftMouseDragged:
-    case NSRightMouseDragged:
-    case NSOtherMouseDragged:
-        //
-        // During a drag, the AppKit does not send mouseEnter and mouseExit
-        // events.  It turns out that doing a hitTest causes the window's
-        // view hierarchy to be locked from drawing and that, of course,
-        // slows everything way down.  Synthesize mouseEnter and mouseExit
-        // then forward.
-        //
-        NSView *hitView = [[source model] hitTest:[nsEvent locationInWindow]];
-
-        if ((hitView != nil) &&
-            ([hitView conformsToProtocol:@protocol(AWTPeerControl)]))
-        {
-            if (sLastMouseDraggedView == nil) {
-                sLastMouseDraggedView = hitView;
-            }
-            else if (hitView != sLastMouseDraggedView) {
-                // We know sLastMouseDraggedView is a AWTPeerControl.
-                jobject lastPeer =
-                    [(id <AWTPeerControl>)sLastMouseDraggedView peer];
-
-                // Send mouseExit to sLastMouseDraggedView
-                jobject exitEvent =
-                    makeMouseEvent(env, nsEvent, lastPeer,
-                                   sLastMouseDraggedView,
-                                   java_awt_event_MouseEvent_MOUSE_EXITED);
-                pushEventForward(exitEvent, env);
-                (*env)->DeleteLocalRef(env, exitEvent);
-
-                // Send mouseEnter to hitView
-                jobject enterEvent =
-                    makeMouseEvent(env, nsEvent, peer, hitView,
-                                   java_awt_event_MouseEvent_MOUSE_ENTERED);
-                pushEventForward(enterEvent, env);
-
-                (*env)->DeleteLocalRef(env, enterEvent);
-
-                // Set sLastMouseDraggedView = hitView
-                sLastMouseDraggedView = hitView;
-            }
-        }
-        break;
-#endif
-
-    default:
-        break;
-    }
-}
-
 jlong UTC(NSEvent *event) {
     struct timeval tv;
     if (gettimeofday(&tv, NULL) == 0) {
@@ -1069,3 +674,23 @@
 
 JNF_COCOA_EXIT(env);
 }
+
+/*
+ * Class:     sun_lwawt_macosx_event_NSEvent
+ * Method:    nsToJavaChar
+ * Signature: (CI)C
+ */
+JNIEXPORT jint JNICALL
+Java_sun_lwawt_macosx_event_NSEvent_nsToJavaChar
+(JNIEnv *env, jclass cls, char nsChar, jint modifierFlags)
+{
+    jchar javaChar = 0;
+    
+JNF_COCOA_ENTER(env);
+    
+    javaChar = NsCharToJavaChar(nsChar, modifierFlags);
+
+JNF_COCOA_EXIT(env);
+    
+    return javaChar;
+}
--- a/src/macosx/native/sun/awt/AWTWindow.h	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/AWTWindow.h	Tue May 08 07:34:53 2012 -0700
@@ -39,7 +39,6 @@
 @private
     JNFWeakJObjectWrapper *javaPlatformWindow;
     CMenuBar *javaMenuBar;
-    NSWindow *growBoxWindow;
     NSSize javaMinSize;
     NSSize javaMaxSize;
     jint styleBits;
@@ -47,7 +46,6 @@
 
 @property (nonatomic, retain) JNFWeakJObjectWrapper *javaPlatformWindow;
 @property (nonatomic, retain) CMenuBar *javaMenuBar;
-@property (nonatomic, retain) NSWindow *growBoxWindow;
 @property (nonatomic) NSSize javaMinSize;
 @property (nonatomic) NSSize javaMaxSize;
 @property (nonatomic) jint styleBits;
--- a/src/macosx/native/sun/awt/AWTWindow.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/AWTWindow.m	Tue May 08 07:34:53 2012 -0700
@@ -40,7 +40,6 @@
 #import "ThreadUtilities.h"
 #import "OSVersion.h"
 
-
 #define MASK(KEY) \
     (sun_lwawt_macosx_CPlatformWindow_ ## KEY)
 
@@ -50,31 +49,12 @@
 #define SET(BITS, KEY, VALUE) \
     BITS = VALUE ? BITS | MASK(KEY) : BITS & ~MASK(KEY)
 
-
 static JNF_CLASS_CACHE(jc_CPlatformWindow, "sun/lwawt/macosx/CPlatformWindow");
 
-@interface JavaResizeGrowBoxOverlayWindow : NSWindow { }
-
-@end
-
-@implementation JavaResizeGrowBoxOverlayWindow
-
-- (BOOL) accessibilityIsIgnored
-{
-    return YES;
-}
-
-- (NSArray *)accessibilityChildrenAttribute
-{
-    return nil;
-}
-@end
-
 @implementation AWTWindow
 
 @synthesize javaPlatformWindow;
 @synthesize javaMenuBar;
-@synthesize growBoxWindow;
 @synthesize javaMinSize;
 @synthesize javaMaxSize;
 @synthesize styleBits;
@@ -154,24 +134,6 @@
 
 }
 
-- (BOOL) shouldShowGrowBox {
-    return isSnowLeopardOrLower() && IS(self.styleBits, RESIZABLE);
-}
-
-- (NSImage *) createGrowBoxImage {
-    NSImage *image = [[NSImage alloc] initWithSize:NSMakeSize(12, 12)];
-    JRSUIControlRef growBoxWidget = JRSUIControlCreate(FALSE);
-    JRSUIControlSetWidget(growBoxWidget, kJRSUI_Widget_growBoxTextured);
-    JRSUIControlSetWindowType(growBoxWidget, kJRSUI_WindowType_utility);
-    JRSUIRendererRef renderer = JRSUIRendererCreate();
-    [image lockFocus]; // sets current graphics context to that of the image
-    JRSUIControlDraw(renderer, growBoxWidget, [[NSGraphicsContext currentContext] graphicsPort], CGRectMake(0, 1, 11, 11));
-    [image unlockFocus];
-    JRSUIRendererRelease(renderer);
-    JRSUIControlRelease(growBoxWidget);
-    return image;
-}
-
 - (id) initWithPlatformWindow:(JNFWeakJObjectWrapper *)platformWindow
                     styleBits:(jint)bits
                     frameRect:(NSRect)rect
@@ -205,28 +167,6 @@
     [self setReleasedWhenClosed:NO];
     [self setPreservesContentDuringLiveResize:YES];
 
-    if ([self shouldShowGrowBox]) {
-        NSImage *growBoxImage = [self createGrowBoxImage];
-        growBoxWindow = [[JavaResizeGrowBoxOverlayWindow alloc] initWithContentRect:NSMakeRect(0, 0, [growBoxImage size].width, [growBoxImage size].height) styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO];
-        [self.growBoxWindow setIgnoresMouseEvents:YES];
-        [self.growBoxWindow setOpaque:NO];
-        [self.growBoxWindow setBackgroundColor:[NSColor clearColor]];
-        [self.growBoxWindow setHasShadow:NO];
-        [self.growBoxWindow setReleasedWhenClosed:NO];
-
-        NSImageView *imageView = [[NSImageView alloc] initWithFrame:[self.growBoxWindow frame]];
-        [imageView setEditable:NO];
-        [imageView setAnimates:NO];
-        [imageView setAllowsCutCopyPaste:NO];
-        [self.growBoxWindow setContentView:imageView];
-        [imageView setImage:growBoxImage];
-        [growBoxImage release];
-        [imageView release];
-
-        [self addChildWindow:self.growBoxWindow ordered:NSWindowAbove];
-        [self adjustGrowBoxWindow];
-    } else growBoxWindow = nil;
-
     return self;
 }
 
@@ -235,7 +175,6 @@
 
     JNIEnv *env = [ThreadUtilities getJNIEnv];
     [self.javaPlatformWindow setJObject:nil withEnv:env];
-    self.growBoxWindow = nil;
 
     [super dealloc];
 }
@@ -321,14 +260,6 @@
 
 // NSWindowDelegate methods
 
-- (void) adjustGrowBoxWindow {
-    if (self.growBoxWindow != nil) {
-        NSRect parentRect = [self frame];
-        parentRect.origin.x += (parentRect.size.width - [self.growBoxWindow frame].size.width);
-        [self.growBoxWindow setFrameOrigin:parentRect.origin];
-    }
-}
-
 - (void) _deliverMoveResizeEvent {
 AWT_ASSERT_APPKIT_THREAD;
 
@@ -342,8 +273,6 @@
         // TODO: create generic AWT assert
     }
 
-    [self adjustGrowBoxWindow];
-
     NSRect frame = ConvertNSScreenRect(env, [self frame]);
 
     static JNF_MEMBER_CACHE(jm_deliverMoveResizeEvent, jc_CPlatformWindow, "deliverMoveResizeEvent", "(IIII)V");
@@ -548,6 +477,31 @@
         }
         [super sendEvent:event];
 }
+
+- (void)constrainSize:(NSSize*)size {
+    float minWidth = 0.f, minHeight = 0.f;
+
+    if (IS(self.styleBits, DECORATED)) {
+        NSRect frame = [self frame];
+        NSRect contentRect = [NSWindow contentRectForFrameRect:frame styleMask:[self styleMask]];
+
+        float top = frame.size.height - contentRect.size.height;
+        float left = contentRect.origin.x - frame.origin.x;
+        float bottom = contentRect.origin.y - frame.origin.y;
+        float right = frame.size.width - (contentRect.size.width + left);
+
+        // Speculative estimation: 80 - enough for window decorations controls
+        minWidth += left + right + 80;
+        minHeight += top + bottom;
+    }
+
+    minWidth = MAX(1.f, minWidth);
+    minHeight = MAX(1.f, minHeight);
+
+    size->width = MAX(size->width, minWidth);
+    size->height = MAX(size->height, minHeight);
+}
+
 @end // AWTWindow
 
 
@@ -703,6 +657,8 @@
         AWT_ASSERT_APPKIT_THREAD;
 
         NSRect rect = ConvertNSScreenRect(NULL, jrect);
+        [window constrainSize:&rect.size];
+
         [window setFrame:rect display:YES];
 
         // only start tracking events if pointer is above the toplevel
@@ -734,13 +690,16 @@
     if (maxW < 1) maxW = 1;
     if (maxH < 1) maxH = 1;
 
-    NSSize min = { minW, minH };
-    NSSize max = { maxW, maxH };
-
     AWTWindow *window = OBJC(windowPtr);
     [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
         AWT_ASSERT_APPKIT_THREAD;
 
+        NSSize min = { minW, minH };
+        NSSize max = { maxW, maxH };
+
+        [window constrainSize:&min];
+        [window constrainSize:&max];
+
         window.javaMinSize = min;
         window.javaMaxSize = max;
         [window updateMinMaxSize:IS(window.styleBits, RESIZABLE)];
@@ -830,7 +789,6 @@
         AWT_ASSERT_APPKIT_THREAD;
 
         [window setAlphaValue:alpha];
-        [window.growBoxWindow setAlphaValue:alpha];
     }];
 
 JNF_COCOA_EXIT(env);
--- a/src/macosx/native/sun/awt/CDropTarget.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/CDropTarget.m	Tue May 08 07:34:53 2012 -0700
@@ -648,6 +648,10 @@
     if (sDraggingError == FALSE) {
         sDraggingLocation = [sender draggingLocation];
         NSPoint javaLocation = [fView convertPoint:sDraggingLocation fromView:nil];
+        // The y coordinate that comes in the NSDraggingInfo seems to be reversed - probably
+        // has to do something with the type of view it comes to.
+        // This is the earliest place where we can correct it.
+        javaLocation.y = fView.window.frame.size.height - javaLocation.y;
 
         jint actions = [DnDUtilities mapNSDragOperationMaskToJava:[sender draggingSourceOperationMask]];
         jint dropAction = sJavaDropOperation;
--- a/src/macosx/native/sun/awt/CImage.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/CImage.m	Tue May 08 07:34:53 2012 -0700
@@ -70,19 +70,8 @@
     [oldContext release];
 }
 
-/*
- * Class:     sun_lwawt_macosx_CImage
- * Method:    nativeCreateNSImageFromArray
- * Signature: ([III)J
- */
-JNIEXPORT jlong JNICALL Java_sun_lwawt_macosx_CImage_nativeCreateNSImageFromArray
-(JNIEnv *env, jclass klass, jintArray buffer, jint width, jint height)
+static NSBitmapImageRep* CImage_CreateImageRep(JNIEnv *env, jintArray buffer, jint width, jint height)
 {
-    jlong result = 0L;
-
-JNF_COCOA_ENTER(env);
-AWT_ASSERT_ANY_THREAD;
-
     NSBitmapImageRep* imageRep = [[NSBitmapImageRep alloc] initWithBitmapDataPlanes:NULL
                                                                          pixelsWide:width
                                                                          pixelsHigh:height
@@ -105,15 +94,83 @@
 
     (*env)->ReleasePrimitiveArrayCritical(env, buffer, src, JNI_ABORT);
 
-    NSImage *nsImage = [[NSImage alloc] initWithSize:NSMakeSize(width, height)];
-    [nsImage addRepresentation:imageRep];
-    [imageRep release];
+    return imageRep;
+}
+
+/*
+ * Class:     sun_lwawt_macosx_CImage
+ * Method:    nativeCreateNSImageFromArray
+ * Signature: ([III)J
+ */
+JNIEXPORT jlong JNICALL Java_sun_lwawt_macosx_CImage_nativeCreateNSImageFromArray
+(JNIEnv *env, jclass klass, jintArray buffer, jint width, jint height)
+{
+    jlong result = 0L;
 
-    if (nsImage != nil) {
-        CFRetain(nsImage); // GC
+JNF_COCOA_ENTER(env);
+AWT_ASSERT_ANY_THREAD;
+
+    NSBitmapImageRep* imageRep = CImage_CreateImageRep(env, buffer, width, height);
+    if (imageRep) {
+        NSImage *nsImage = [[NSImage alloc] initWithSize:NSMakeSize(width, height)];
+        [nsImage addRepresentation:imageRep];
+        [imageRep release];
+
+        if (nsImage != nil) {
+            CFRetain(nsImage); // GC
+        }
+
+        result = ptr_to_jlong(nsImage);
     }
 
-    result = ptr_to_jlong(nsImage);
+JNF_COCOA_EXIT(env);
+
+    return result;
+}
+
+/*
+ * Class:     sun_lwawt_macosx_CImage
+ * Method:    nativeCreateNSImageFromArrays
+ * Signature: ([[I[I[I)J
+ */
+JNIEXPORT jlong JNICALL Java_sun_lwawt_macosx_CImage_nativeCreateNSImageFromArrays
+(JNIEnv *env, jclass klass, jobjectArray buffers, jintArray widths, jintArray heights)
+{
+    jlong result = 0L;
+
+JNF_COCOA_ENTER(env);
+AWT_ASSERT_ANY_THREAD;
+
+    jsize num = (*env)->GetArrayLength(env, buffers);
+    NSMutableArray * reps = [NSMutableArray arrayWithCapacity: num];
+
+    jint * ws = (*env)->GetIntArrayElements(env, widths, NULL);
+    jint * hs = (*env)->GetIntArrayElements(env, heights, NULL);
+
+    jsize i;
+    for (i = 0; i < num; i++) {
+        jintArray buffer = (*env)->GetObjectArrayElement(env, buffers, i);
+
+        NSBitmapImageRep* imageRep = CImage_CreateImageRep(env, buffer, ws[i], hs[i]);
+        if (imageRep) {
+            [reps addObject: imageRep];
+        }
+    }
+
+    (*env)->ReleaseIntArrayElements(env, heights, hs, JNI_ABORT);
+    (*env)->ReleaseIntArrayElements(env, widths, ws, JNI_ABORT);
+
+    if ([reps count]) {
+        NSImage *nsImage = [[NSImage alloc] initWithSize:NSMakeSize(0, 0)];
+        [nsImage addRepresentations: reps];
+        [reps release];
+
+        if (nsImage != nil) {
+            CFRetain(nsImage); // GC
+        }
+
+        result = ptr_to_jlong(nsImage);
+    }
 
 JNF_COCOA_EXIT(env);
 
--- a/src/macosx/native/sun/awt/CMenuItem.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/CMenuItem.m	Tue May 08 07:34:53 2012 -0700
@@ -125,11 +125,8 @@
 
     [JNFRunLoop performOnMainThreadWaiting:YES withBlock:^(){
         AWT_ASSERT_APPKIT_THREAD;
-
-        if (![theKeyEquivalent isEqualToString:@""]) {
-            [fMenuItem setKeyEquivalent:theKeyEquivalent];
-            [fMenuItem setKeyEquivalentModifierMask:modifierMask];
-        }
+        [fMenuItem setKeyEquivalent:theKeyEquivalent];
+        [fMenuItem setKeyEquivalentModifierMask:modifierMask];
         [fMenuItem setTitle:theLabel];
     }];
 }
--- a/src/macosx/native/sun/awt/awt.m	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/awt/awt.m	Tue May 08 07:34:53 2012 -0700
@@ -306,6 +306,18 @@
         // AWT gets here AFTER +[AWTStarter appKitIsRunning:] is called.
         if (verbose) AWT_DEBUG_LOG(@"got out of the AppKit startup mutex");
     }
+
+    // Don't set the delegate until the NSApplication has been created and
+    // its finishLaunching has initialized it.
+    //  ApplicationDelegate is the support code for com.apple.eawt.
+    void (^setDelegateBlock)() = ^(){
+        OSXAPP_SetApplicationDelegate([ApplicationDelegate sharedDelegate]);
+    };
+    if (onMainThread) {
+        setDelegateBlock();
+    } else {
+        [JNFRunLoop performOnMainThreadWaiting:YES withBlock:setDelegateBlock];
+    }
 }
 
 - (void)starter:(NSArray*)args {
@@ -340,10 +352,6 @@
     //  AppKit Application.
     NSApplication *app = [NSApplicationAWT sharedApplication];
 
-    // Don't set the delegate until the NSApplication has been created.
-    //  ApplicationDelegate is the support code for com.apple.eawt.
-    OSXAPP_SetApplicationDelegate([ApplicationDelegate sharedDelegate]);
-
     // AWT gets to this point BEFORE NSApplicationDidFinishLaunchingNotification is sent.
     if (![app isRunning]) {
         if (verbose) AWT_DEBUG_LOG(@"+[AWTStarter startAWT]: ![app isRunning]");
--- a/src/macosx/native/sun/nio/ch/KQueueArrayWrapper.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/macosx/native/sun/nio/ch/KQueueArrayWrapper.c	Tue May 08 07:34:53 2012 -0700
@@ -4,7 +4,9 @@
  *
  * 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.
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,83 +1,54 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK Color Chooser
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Hue:
-GTKColorChooserPanel.hueMnemonic=72
-
-GTKColorChooserPanel.redText=Red:
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=Saturation:
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Green:
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=Value:
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Blue:
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=Color Name:
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=All Files
-FileChooser.newFolderButtonText=New Folder
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Folder name:
-FileChooser.newFolderNoDirectoryErrorTitleText=Error
-FileChooser.newFolderNoDirectoryErrorText=Error creating directory "{0}": No such file or directory
-FileChooser.deleteFileButtonText=Delete File
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=Rename File
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Cancel
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Save
-FileChooser.openDialogTitleText=Open
-FileChooser.pathLabelText=Selection:
-FileChooser.filterLabelText=Filter:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=Folders
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=Files
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=Abort file chooser dialog.
-FileChooser.saveButtonToolTipText=Save selected file.
-FileChooser.openButtonToolTipText=Open selected file.
-
-FileChooser.renameFileDialogText=Rename file "{0}" to
-FileChooser.renameFileErrorTitle=Error 
-FileChooser.renameFileErrorText=Error renaming file "{0}" to "{1}"
-
-OptionPane.okButtonMnemonic=79
-OptionPane.cancelButtonMnemonic=67
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=&GTK Color Chooser
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Hue:
+
+GTKColorChooserPanel.red.textAndMnemonic=R&ed:
+
+GTKColorChooserPanel.saturation.textAndMnemonic=&Saturation:
+
+GTKColorChooserPanel.green.textAndMnemonic=&Green:
+
+GTKColorChooserPanel.value.textAndMnemonic=&Value:
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Blue:
+
+GTKColorChooserPanel.color.textAndMnemonic=Color &Name:
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=All Files
+FileChooser.newFolderButton.textAndMnemonic=&New Folder
+FileChooser.newFolderDialog.textAndMnemonic=Folder name:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Error
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Error creating directory "{0}": No such file or directory
+FileChooser.deleteFileButton.textAndMnemonic=De&lete File
+FileChooser.renameFileButton.textAndMnemonic=&Rename File
+FileChooser.cancelButton.textAndMnemonic=&Cancel
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Save
+FileChooser.openDialogTitle.textAndMnemonic=Open
+FileChooser.pathLabel.textAndMnemonic=&Selection:
+FileChooser.filterLabel.textAndMnemonic=Filter:
+FileChooser.foldersLabel.textAndMnemonic=Fol&ders
+FileChooser.filesLabel.textAndMnemonic=&Files
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Abort file chooser dialog.
+FileChooser.saveButtonToolTip.textAndMnemonic=Save selected file.
+FileChooser.openButtonToolTip.textAndMnemonic=Open selected file.
+
+FileChooser.renameFileDialog.textAndMnemonic=Rename file "{0}" to
+FileChooser.renameFileError.titleAndMnemonic=Error
+FileChooser.renameFileError.textAndMnemonic=Error renaming file "{0}" to "{1}"
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK-Farbauswahl
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Farbton:
-GTKColorChooserPanel.hueMnemonic=70
-
-GTKColorChooserPanel.redText=Rot:
-GTKColorChooserPanel.redMnemonic=82
-
-GTKColorChooserPanel.saturationText=S\u00E4ttigung:
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Gr\u00FCn:
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=Wert:
-GTKColorChooserPanel.valueMnemonic=87
-
-GTKColorChooserPanel.blueText=Blau:
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=Farbname:
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Alle Dateien
-FileChooser.newFolderButtonText=Neuer Ordner
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Ordnername:
-FileChooser.newFolderNoDirectoryErrorTitleText=Fehler
-FileChooser.newFolderNoDirectoryErrorText=Fehler beim Erstellen von Verzeichnis "{0}": Datei oder Verzeichnis nicht vorhanden
-FileChooser.deleteFileButtonText=Datei l\u00F6schen
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=Datei umbenennen
-FileChooser.renameFileButtonMnemonic=85
-FileChooser.cancelButtonText=Abbrechen
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Speichern
-FileChooser.openDialogTitleText=\u00D6ffnen
-FileChooser.pathLabelText=Auswahl:
-FileChooser.filterLabelText=Filter:
-FileChooser.pathLabelMnemonic=87
-FileChooser.foldersLabelText=Ordner
-FileChooser.foldersLabelMnemonic=79
-FileChooser.filesLabelText=Dateien
-FileChooser.filesLabelMnemonic=68
-
-FileChooser.cancelButtonToolTipText=Dialogfeld f\u00FCr Dateiauswahl schlie\u00DFen.
-FileChooser.saveButtonToolTipText=Ausgew\u00E4hlte Datei speichern.
-FileChooser.openButtonToolTipText=Ausgew\u00E4hlte Datei \u00F6ffnen.
-
-FileChooser.renameFileDialogText=Datei "{0}" umbenennen in
-FileChooser.renameFileErrorTitle=Fehler
-FileChooser.renameFileErrorText=Fehler beim Umbenennen der Datei "{0}" in "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=79
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Abbrechen
-OptionPane.cancelButtonMnemonic=65
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=&GTK-Farbauswahl
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Farbton:
+
+GTKColorChooserPanel.red.textAndMnemonic=&Rot:
+
+GTKColorChooserPanel.saturation.textAndMnemonic=S\u00E4ttigung(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=Gr\u00FCn(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=&Wert:
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Blau:
+
+GTKColorChooserPanel.color.textAndMnemonic=Farb&name:
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Alle Dateien
+FileChooser.newFolderButton.textAndMnemonic=&Neuer Ordner
+FileChooser.newFolderDialog.textAndMnemonic=Ordnername:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Fehler
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Fehler beim Erstellen von Verzeichnis "{0}": Datei oder Verzeichnis nicht vorhanden
+FileChooser.deleteFileButton.textAndMnemonic=Datei l\u00F6schen(&L)
+FileChooser.renameFileButton.textAndMnemonic=Datei &umbenennen
+FileChooser.cancelButton.textAndMnemonic=&Abbrechen
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Speichern
+FileChooser.openDialogTitle.textAndMnemonic=\u00D6ffnen
+FileChooser.pathLabel.textAndMnemonic=Aus&wahl:
+FileChooser.filterLabel.textAndMnemonic=Filter:
+FileChooser.foldersLabel.textAndMnemonic=&Ordner
+FileChooser.filesLabel.textAndMnemonic=&Dateien
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Dialogfeld f\u00FCr Dateiauswahl schlie\u00DFen.
+FileChooser.saveButtonToolTip.textAndMnemonic=Ausgew\u00E4hlte Datei speichern.
+FileChooser.openButtonToolTip.textAndMnemonic=Ausgew\u00E4hlte Datei \u00F6ffnen.
+
+FileChooser.renameFileDialog.textAndMnemonic=Datei "{0}" umbenennen in
+FileChooser.renameFileError.titleAndMnemonic=Fehler
+FileChooser.renameFileError.textAndMnemonic=Fehler beim Umbenennen der Datei "{0}" in "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&OK
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Abbrechen
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=Selector de Color para GTK
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Mat:
-GTKColorChooserPanel.hueMnemonic=77
-
-GTKColorChooserPanel.redText=Rojo:
-GTKColorChooserPanel.redMnemonic=74
-
-GTKColorChooserPanel.saturationText=Saturaci\u00F3n:
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Verde:
-GTKColorChooserPanel.greenMnemonic=69
-
-GTKColorChooserPanel.valueText=Valor:
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Azul:
-GTKColorChooserPanel.blueMnemonic=65
-
-GTKColorChooserPanel.colorNameText=Nombre del Color:
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Todos los Archivos
-FileChooser.newFolderButtonText=Nueva Carpeta
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Nombre de la Carpeta:
-FileChooser.newFolderNoDirectoryErrorTitleText=Error
-FileChooser.newFolderNoDirectoryErrorText=Error al crear el directorio "{0}": no existe dicho archivo o directorio
-FileChooser.deleteFileButtonText=Suprimir Archivo
-FileChooser.deleteFileButtonMnemonic=80
-FileChooser.renameFileButtonText=Cambiar Nombre de Archivo
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Cancelar
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=Aceptar
-FileChooser.saveButtonMnemonic=65
-FileChooser.openButtonText=Aceptar
-FileChooser.openButtonMnemonic=65
-FileChooser.saveDialogTitleText=Guardar
-FileChooser.openDialogTitleText=Abrir
-FileChooser.pathLabelText=Selecci\u00F3n:
-FileChooser.filterLabelText=Filtro:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=Carpetas
-FileChooser.foldersLabelMnemonic=84
-FileChooser.filesLabelText=Archivos
-FileChooser.filesLabelMnemonic=65
-
-FileChooser.cancelButtonToolTipText=Abortar cuadro de di\u00E1logo del selector de archivos.
-FileChooser.saveButtonToolTipText=Guardar el archivo seleccionado.
-FileChooser.openButtonToolTipText=Abrir el archivo seleccionado.
-
-FileChooser.renameFileDialogText=Cambiar el nombre del archivo "{0}" por
-FileChooser.renameFileErrorTitle=Error
-FileChooser.renameFileErrorText=Error al cambiar el nombre del archivo "{0}" a "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=Aceptar
-OptionPane.okButtonMnemonic=65
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Cancelar
-OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=Selector de Color para &GTK
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Mat:
+
+GTKColorChooserPanel.red.textAndMnemonic=Ro&jo:
+
+GTKColorChooserPanel.saturation.textAndMnemonic=Saturaci\u00F3n(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=V&erde:
+
+GTKColorChooserPanel.value.textAndMnemonic=&Valor:
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Azul:
+
+GTKColorChooserPanel.color.textAndMnemonic=&Nombre del Color:
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Todos los Archivos
+FileChooser.newFolderButton.textAndMnemonic=&Nueva Carpeta
+FileChooser.newFolderDialog.textAndMnemonic=Nombre de la Carpeta:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Error
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Error al crear el directorio "{0}": no existe dicho archivo o directorio
+FileChooser.deleteFileButton.textAndMnemonic=Su&primir Archivo
+FileChooser.renameFileButton.textAndMnemonic=Cambia&r Nombre de Archivo
+FileChooser.cancelButton.textAndMnemonic=&Cancelar
+FileChooser.saveButton.textAndMnemonic=&Aceptar
+FileChooser.openButton.textAndMnemonic=&Aceptar
+FileChooser.saveDialogTitle.textAndMnemonic=Guardar
+FileChooser.openDialogTitle.textAndMnemonic=Abrir
+FileChooser.pathLabel.textAndMnemonic=Selecci\u00F3n(&S):
+FileChooser.filterLabel.textAndMnemonic=Filtro:
+FileChooser.foldersLabel.textAndMnemonic=Carpe&tas
+FileChooser.filesLabel.textAndMnemonic=&Archivos
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Abortar cuadro de di\u00E1logo del selector de archivos.
+FileChooser.saveButtonToolTip.textAndMnemonic=Guardar el archivo seleccionado.
+FileChooser.openButtonToolTip.textAndMnemonic=Abrir el archivo seleccionado.
+
+FileChooser.renameFileDialog.textAndMnemonic=Cambiar el nombre del archivo "{0}" por
+FileChooser.renameFileError.titleAndMnemonic=Error
+FileChooser.renameFileError.textAndMnemonic=Error al cambiar el nombre del archivo "{0}" a "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&Aceptar
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Cancelar
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=S\u00E9lecteur de couleurs GTK
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Teinte :
-GTKColorChooserPanel.hueMnemonic=84
-
-GTKColorChooserPanel.redText=Rouge\u00A0:
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=Saturation :
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Vert :
-GTKColorChooserPanel.greenMnemonic=69
-
-GTKColorChooserPanel.valueText=Valeur :
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Bleu :
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=Nom de couleur :
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Tous les fichiers
-FileChooser.newFolderButtonText=Nouveau dossier
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Nom du dossier :
-FileChooser.newFolderNoDirectoryErrorTitleText=Erreur
-FileChooser.newFolderNoDirectoryErrorText=Erreur lors de la cr\u00E9ation du r\u00E9pertoire "{0}" : ce fichier ou r\u00E9pertoire n''existe pas
-FileChooser.deleteFileButtonText=Supprimer le fichier
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=Renommer le fichier
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Annuler
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Enregistrer
-FileChooser.openDialogTitleText=Ouvrir
-FileChooser.pathLabelText=S\u00E9lection :
-FileChooser.filterLabelText=Filtre :
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=Dossiers
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=Fichiers
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=Ferme la bo\u00EEte de dialogue du s\u00E9lecteur de fichiers.
-FileChooser.saveButtonToolTipText=Enregistre le fichier s\u00E9lectionn\u00E9.
-FileChooser.openButtonToolTipText=Ouvre le fichier s\u00E9lectionn\u00E9.
-
-FileChooser.renameFileDialogText=Renomme le fichier "{0}" en
-FileChooser.renameFileErrorTitle=Erreur
-FileChooser.renameFileErrorText=Erreur lors du changement de nom du fichier "{0}" en "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=79
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Annuler
-OptionPane.cancelButtonMnemonic=65
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=S\u00E9lecteur de couleurs GTK(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Teinte :
+
+GTKColorChooserPanel.red.textAndMnemonic=Rouge\u00A0(&E):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=&Saturation :
+
+GTKColorChooserPanel.green.textAndMnemonic=V&ert :
+
+GTKColorChooserPanel.value.textAndMnemonic=&Valeur :
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Bleu :
+
+GTKColorChooserPanel.color.textAndMnemonic=&Nom de couleur :
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Tous les fichiers
+FileChooser.newFolderButton.textAndMnemonic=&Nouveau dossier
+FileChooser.newFolderDialog.textAndMnemonic=Nom du dossier :
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Erreur
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Erreur lors de la cr\u00E9ation du r\u00E9pertoire "{0}" : ce fichier ou r\u00E9pertoire n''existe pas
+FileChooser.deleteFileButton.textAndMnemonic=Supprimer &le fichier
+FileChooser.renameFileButton.textAndMnemonic=&Renommer le fichier
+FileChooser.cancelButton.textAndMnemonic=&Annuler
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Enregistrer
+FileChooser.openDialogTitle.textAndMnemonic=Ouvrir
+FileChooser.pathLabel.textAndMnemonic=S\u00E9lection (&S):
+FileChooser.filterLabel.textAndMnemonic=Filtre :
+FileChooser.foldersLabel.textAndMnemonic=&Dossiers
+FileChooser.filesLabel.textAndMnemonic=&Fichiers
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Ferme la bo\u00EEte de dialogue du s\u00E9lecteur de fichiers.
+FileChooser.saveButtonToolTip.textAndMnemonic=Enregistre le fichier s\u00E9lectionn\u00E9.
+FileChooser.openButtonToolTip.textAndMnemonic=Ouvre le fichier s\u00E9lectionn\u00E9.
+
+FileChooser.renameFileDialog.textAndMnemonic=Renomme le fichier "{0}" en
+FileChooser.renameFileError.titleAndMnemonic=Erreur
+FileChooser.renameFileError.textAndMnemonic=Erreur lors du changement de nom du fichier "{0}" en "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&OK
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Annuler
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=Selezione colore GTK
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Ton.:
-GTKColorChooserPanel.hueMnemonic=84
-
-GTKColorChooserPanel.redText=Rosso:
-GTKColorChooserPanel.redMnemonic=79
-
-GTKColorChooserPanel.saturationText=Saturazione:
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Verde:
-GTKColorChooserPanel.greenMnemonic=69
-
-GTKColorChooserPanel.valueText=Valore:
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Blu:
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=Nome colore:
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Tutti i file
-FileChooser.newFolderButtonText=Nuova cartella
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Nome della cartella:
-FileChooser.newFolderNoDirectoryErrorTitleText=Errore
-FileChooser.newFolderNoDirectoryErrorText=Errore durante la creazione della directory "{0}": file o directory inesistente
-FileChooser.deleteFileButtonText=Elimina file
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=Rinomina file
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Annulla
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Salva
-FileChooser.openDialogTitleText=Apri
-FileChooser.pathLabelText=Selezione:
-FileChooser.filterLabelText=Filtro:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=Cartelle
-FileChooser.foldersLabelMnemonic=84
-FileChooser.filesLabelText=File
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=Chiude la finestra di dialogo di selezione file.
-FileChooser.saveButtonToolTipText=Salva il file selezionato.
-FileChooser.openButtonToolTipText=Apre il file selezionato.
-
-FileChooser.renameFileDialogText=Rinomina file "{0}" in
-FileChooser.renameFileErrorTitle=Errore
-FileChooser.renameFileErrorText=Errore durante la ridenominazione del file "{0}" in "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=79
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Annulla
-OptionPane.cancelButtonMnemonic=65
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=Selezione colore &GTK
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Ton.:
+
+GTKColorChooserPanel.red.textAndMnemonic=R&osso:
+
+GTKColorChooserPanel.saturation.textAndMnemonic=&Saturazione:
+
+GTKColorChooserPanel.green.textAndMnemonic=V&erde:
+
+GTKColorChooserPanel.value.textAndMnemonic=&Valore:
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Blu:
+
+GTKColorChooserPanel.color.textAndMnemonic=&Nome colore:
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Tutti i file
+FileChooser.newFolderButton.textAndMnemonic=&Nuova cartella
+FileChooser.newFolderDialog.textAndMnemonic=Nome della cartella:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Errore
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Errore durante la creazione della directory "{0}": file o directory inesistente
+FileChooser.deleteFileButton.textAndMnemonic=E&limina file
+FileChooser.renameFileButton.textAndMnemonic=&Rinomina file
+FileChooser.cancelButton.textAndMnemonic=&Annulla
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Salva
+FileChooser.openDialogTitle.textAndMnemonic=Apri
+FileChooser.pathLabel.textAndMnemonic=&Selezione:
+FileChooser.filterLabel.textAndMnemonic=Filtro:
+FileChooser.foldersLabel.textAndMnemonic=Car&telle
+FileChooser.filesLabel.textAndMnemonic=&File
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Chiude la finestra di dialogo di selezione file.
+FileChooser.saveButtonToolTip.textAndMnemonic=Salva il file selezionato.
+FileChooser.openButtonToolTip.textAndMnemonic=Apre il file selezionato.
+
+FileChooser.renameFileDialog.textAndMnemonic=Rinomina file "{0}" in
+FileChooser.renameFileError.titleAndMnemonic=Errore
+FileChooser.renameFileError.textAndMnemonic=Errore durante la ridenominazione del file "{0}" in "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&OK
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Annulla
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,84 +1,55 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK\u30AB\u30E9\u30FC\u30FB\u30C1\u30E5\u30FC\u30B6(G)
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=\u8272\u76F8(H):
-GTKColorChooserPanel.hueMnemonic=72
-
-GTKColorChooserPanel.redText=\u8D64(E):
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=\u5F69\u5EA6(S):
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=\u7DD1(G):
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=\u5024(V):
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=\u9752(B):
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=\u8272\u540D(N):
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB
-FileChooser.newFolderButtonText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0(N)
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=\u30D5\u30A9\u30EB\u30C0\u540D:
-FileChooser.newFolderNoDirectoryErrorTitleText=\u30A8\u30E9\u30FC
-FileChooser.newFolderNoDirectoryErrorText=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA"{0}"\u306E\u4F5C\u6210\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: \u3053\u306E\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5B58\u5728\u3057\u307E\u305B\u3093
-FileChooser.deleteFileButtonText=\u30D5\u30A1\u30A4\u30EB\u306E\u524A\u9664(L)
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=\u30D5\u30A1\u30A4\u30EB\u306E\u540D\u524D\u5909\u66F4(R)
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u4FDD\u5B58
-FileChooser.openDialogTitleText=\u958B\u304F
-FileChooser.pathLabelText=\u9078\u629E(S):
-FileChooser.filterLabelText=\u30D5\u30A3\u30EB\u30BF:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=\u30D5\u30A9\u30EB\u30C0(D)
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=\u30D5\u30A1\u30A4\u30EB(F)
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=\u30D5\u30A1\u30A4\u30EB\u30FB\u30C1\u30E5\u30FC\u30B6\u30FB\u30C0\u30A4\u30A2\u30ED\u30B0\u3092\u7D42\u4E86\u3057\u307E\u3059\u3002
-FileChooser.saveButtonToolTipText=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3057\u307E\u3059\u3002
-FileChooser.openButtonToolTipText=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u307E\u3059\u3002
-
-FileChooser.renameFileDialogText=\u30D5\u30A1\u30A4\u30EB"{0}"\u3092\u6B21\u306E\u540D\u524D\u306B\u5909\u66F4:
-FileChooser.renameFileErrorTitle=\u30A8\u30E9\u30FC
-FileChooser.renameFileErrorText=\u30D5\u30A1\u30A4\u30EB"{0}"\u306E"{1}"\u3078\u306E\u5909\u66F4\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
-
-#OptionPane.okButtonMnemonic=79
-#OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=GTK\u30AB\u30E9\u30FC\u30FB\u30C1\u30E5\u30FC\u30B6(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=\u8272\u76F8(&H):
+
+GTKColorChooserPanel.red.textAndMnemonic=\u8D64(&E):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=\u5F69\u5EA6(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=\u7DD1(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=\u5024(&V):
+
+GTKColorChooserPanel.blue.textAndMnemonic=\u9752(&B):
+
+GTKColorChooserPanel.color.textAndMnemonic=\u8272\u540D(&N):
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB
+FileChooser.newFolderButton.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0(&N)
+FileChooser.newFolderDialog.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0\u540D:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=\u30A8\u30E9\u30FC
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA"{0}"\u306E\u4F5C\u6210\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: \u3053\u306E\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5B58\u5728\u3057\u307E\u305B\u3093
+FileChooser.deleteFileButton.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u306E\u524A\u9664(&L)
+FileChooser.renameFileButton.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u306E\u540D\u524D\u5909\u66F4(&R)
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=\u4FDD\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u958B\u304F
+FileChooser.pathLabel.textAndMnemonic=\u9078\u629E(&S):
+FileChooser.filterLabel.textAndMnemonic=\u30D5\u30A3\u30EB\u30BF:
+FileChooser.foldersLabel.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0(&D)
+FileChooser.filesLabel.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB(&F)
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u30FB\u30C1\u30E5\u30FC\u30B6\u30FB\u30C0\u30A4\u30A2\u30ED\u30B0\u3092\u7D42\u4E86\u3057\u307E\u3059\u3002
+FileChooser.saveButtonToolTip.textAndMnemonic=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3057\u307E\u3059\u3002
+FileChooser.openButtonToolTip.textAndMnemonic=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u307E\u3059\u3002
+
+FileChooser.renameFileDialog.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB"{0}"\u3092\u6B21\u306E\u540D\u524D\u306B\u5909\u66F4:
+FileChooser.renameFileError.titleAndMnemonic=\u30A8\u30E9\u30FC
+FileChooser.renameFileError.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB"{0}"\u306E"{1}"\u3078\u306E\u5909\u66F4\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
+
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,84 +1,55 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK \uC0C9\uC0C1 \uC120\uD0DD\uAE30(G)
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=\uC0C9\uC870(H):
-GTKColorChooserPanel.hueMnemonic=72
-
-GTKColorChooserPanel.redText=\uBE68\uAC04\uC0C9(E):
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=\uCC44\uB3C4(S):
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=\uB179\uC0C9(G):
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=\uAC12(V):
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=\uD30C\uB780\uC0C9(B):
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=\uC0C9\uC0C1 \uC774\uB984(N):
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=\uBAA8\uB4E0 \uD30C\uC77C
-FileChooser.newFolderButtonText=\uC0C8 \uD3F4\uB354(N)
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=\uD3F4\uB354 \uC774\uB984:
-FileChooser.newFolderNoDirectoryErrorTitleText=\uC624\uB958
-FileChooser.newFolderNoDirectoryErrorText="{0}" \uB514\uB809\uD1A0\uB9AC\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: \uD574\uB2F9 \uD30C\uC77C \uB610\uB294 \uB514\uB809\uD1A0\uB9AC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
-FileChooser.deleteFileButtonText=\uD30C\uC77C \uC0AD\uC81C(L)
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=\uD30C\uC77C \uC774\uB984 \uBC14\uAFB8\uAE30(R)
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=\uCDE8\uC18C
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\uD655\uC778
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=\uD655\uC778
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\uC800\uC7A5
-FileChooser.openDialogTitleText=\uC5F4\uAE30
-FileChooser.pathLabelText=\uC120\uD0DD \uC0AC\uD56D(S):
-FileChooser.filterLabelText=\uD544\uD130:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=\uD3F4\uB354(D)
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=\uD30C\uC77C(F)
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=\uD30C\uC77C \uC120\uD0DD\uAE30 \uB300\uD654\uC0C1\uC790\uB97C \uC911\uB2E8\uD569\uB2C8\uB2E4.
-FileChooser.saveButtonToolTipText=\uC120\uD0DD\uB41C \uD30C\uC77C\uC744 \uC800\uC7A5\uD569\uB2C8\uB2E4.
-FileChooser.openButtonToolTipText=\uC120\uD0DD\uB41C \uD30C\uC77C\uC744 \uC5FD\uB2C8\uB2E4.
-
-FileChooser.renameFileDialogText="{0}" \uD30C\uC77C\uC758 \uC774\uB984 \uBC14\uAFB8\uAE30
-FileChooser.renameFileErrorTitle=\uC624\uB958
-FileChooser.renameFileErrorText="{0}" \uD30C\uC77C\uC758 \uC774\uB984\uC744 "{1}"(\uC73C)\uB85C \uBC14\uAFB8\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
-
-#OptionPane.okButtonMnemonic=79
-#OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=GTK \uC0C9\uC0C1 \uC120\uD0DD\uAE30(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=\uC0C9\uC870(&H):
+
+GTKColorChooserPanel.red.textAndMnemonic=\uBE68\uAC04\uC0C9(&E):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=\uCC44\uB3C4(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=\uB179\uC0C9(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=\uAC12(&V):
+
+GTKColorChooserPanel.blue.textAndMnemonic=\uD30C\uB780\uC0C9(&B):
+
+GTKColorChooserPanel.color.textAndMnemonic=\uC0C9\uC0C1 \uC774\uB984(&N):
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=\uBAA8\uB4E0 \uD30C\uC77C
+FileChooser.newFolderButton.textAndMnemonic=\uC0C8 \uD3F4\uB354(&N)
+FileChooser.newFolderDialog.textAndMnemonic=\uD3F4\uB354 \uC774\uB984:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=\uC624\uB958
+FileChooser.newFolderNoDirectoryError.textAndMnemonic="{0}" \uB514\uB809\uD1A0\uB9AC\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: \uD574\uB2F9 \uD30C\uC77C \uB610\uB294 \uB514\uB809\uD1A0\uB9AC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
+FileChooser.deleteFileButton.textAndMnemonic=\uD30C\uC77C \uC0AD\uC81C(&L)
+FileChooser.renameFileButton.textAndMnemonic=\uD30C\uC77C \uC774\uB984 \uBC14\uAFB8\uAE30(&R)
+FileChooser.cancelButton.textAndMnemonic=\uCDE8\uC18C(&C)
+FileChooser.saveButton.textAndMnemonic=\uD655\uC778(&O)
+FileChooser.openButton.textAndMnemonic=\uD655\uC778(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\uC800\uC7A5
+FileChooser.openDialogTitle.textAndMnemonic=\uC5F4\uAE30
+FileChooser.pathLabel.textAndMnemonic=\uC120\uD0DD \uC0AC\uD56D(&S):
+FileChooser.filterLabel.textAndMnemonic=\uD544\uD130:
+FileChooser.foldersLabel.textAndMnemonic=\uD3F4\uB354(&D)
+FileChooser.filesLabel.textAndMnemonic=\uD30C\uC77C(&F)
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=\uD30C\uC77C \uC120\uD0DD\uAE30 \uB300\uD654\uC0C1\uC790\uB97C \uC911\uB2E8\uD569\uB2C8\uB2E4.
+FileChooser.saveButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uD30C\uC77C\uC744 \uC800\uC7A5\uD569\uB2C8\uB2E4.
+FileChooser.openButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uD30C\uC77C\uC744 \uC5FD\uB2C8\uB2E4.
+
+FileChooser.renameFileDialog.textAndMnemonic="{0}" \uD30C\uC77C\uC758 \uC774\uB984 \uBC14\uAFB8\uAE30
+FileChooser.renameFileError.titleAndMnemonic=\uC624\uB958
+FileChooser.renameFileError.textAndMnemonic="{0}" \uD30C\uC77C\uC758 \uC774\uB984\uC744 "{1}"(\uC73C)\uB85C \uBC14\uAFB8\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
+
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=Seletor de Cores do GTK
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Matiz:
-GTKColorChooserPanel.hueMnemonic=77
-
-GTKColorChooserPanel.redText=Vermelho:
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=Satura\u00E7\u00E3o:
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=Verde:
-GTKColorChooserPanel.greenMnemonic=68
-
-GTKColorChooserPanel.valueText=Valor:
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Azul:
-GTKColorChooserPanel.blueMnemonic=65
-
-GTKColorChooserPanel.colorNameText=Nome da Cor:
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Todos os Arquivos
-FileChooser.newFolderButtonText=Nova Pasta
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Nome da pasta:
-FileChooser.newFolderNoDirectoryErrorTitleText=Erro
-FileChooser.newFolderNoDirectoryErrorText=Erro ao criar o diret\u00F3rio "{0}": N\u00E3o h\u00E1 arquivo ou diret\u00F3rio
-FileChooser.deleteFileButtonText=Deletar Arquivo
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=Renomear Arquivo
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Cancelar
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Salvar
-FileChooser.openDialogTitleText=Abrir
-FileChooser.pathLabelText=Sele\u00E7\u00E3o:
-FileChooser.filterLabelText=Filtro:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=Pastas
-FileChooser.foldersLabelMnemonic=80
-FileChooser.filesLabelText=Arquivos
-FileChooser.filesLabelMnemonic=65
-
-FileChooser.cancelButtonToolTipText=Abortar caixa de di\u00E1logo do seletor de arquivos.
-FileChooser.saveButtonToolTipText=Salvar arquivo selecionado.
-FileChooser.openButtonToolTipText=Abrir arquivo selecionado.
-
-FileChooser.renameFileDialogText=Renomear arquivo "{0}" por
-FileChooser.renameFileErrorTitle=Erro
-FileChooser.renameFileErrorText=Erro ao renomear o arquivo "{0}" por "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=79
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Cancelar
-OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=Seletor de Cores do &GTK
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Matiz:
+
+GTKColorChooserPanel.red.textAndMnemonic=V&ermelho:
+
+GTKColorChooserPanel.saturation.textAndMnemonic=Satura\u00E7\u00E3o(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=Ver&de:
+
+GTKColorChooserPanel.value.textAndMnemonic=&Valor:
+
+GTKColorChooserPanel.blue.textAndMnemonic=&Azul:
+
+GTKColorChooserPanel.color.textAndMnemonic=&Nome da Cor:
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Todos os Arquivos
+FileChooser.newFolderButton.textAndMnemonic=&Nova Pasta
+FileChooser.newFolderDialog.textAndMnemonic=Nome da pasta:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Erro
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Erro ao criar o diret\u00F3rio "{0}": N\u00E3o h\u00E1 arquivo ou diret\u00F3rio
+FileChooser.deleteFileButton.textAndMnemonic=De&letar Arquivo
+FileChooser.renameFileButton.textAndMnemonic=&Renomear Arquivo
+FileChooser.cancelButton.textAndMnemonic=&Cancelar
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Salvar
+FileChooser.openDialogTitle.textAndMnemonic=Abrir
+FileChooser.pathLabel.textAndMnemonic=Sele\u00E7\u00E3o(&S):
+FileChooser.filterLabel.textAndMnemonic=Filtro:
+FileChooser.foldersLabel.textAndMnemonic=&Pastas
+FileChooser.filesLabel.textAndMnemonic=&Arquivos
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Abortar caixa de di\u00E1logo do seletor de arquivos.
+FileChooser.saveButtonToolTip.textAndMnemonic=Salvar arquivo selecionado.
+FileChooser.openButtonToolTip.textAndMnemonic=Abrir arquivo selecionado.
+
+FileChooser.renameFileDialog.textAndMnemonic=Renomear arquivo "{0}" por
+FileChooser.renameFileError.titleAndMnemonic=Erro
+FileChooser.renameFileError.textAndMnemonic=Erro ao renomear o arquivo "{0}" por "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&OK
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Cancelar
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,88 +1,59 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK-f\u00E4rgv\u00E4ljaren
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=Nyans:
-GTKColorChooserPanel.hueMnemonic=78
-
-GTKColorChooserPanel.redText=R\u00F6d:
-GTKColorChooserPanel.redMnemonic=82
-
-GTKColorChooserPanel.saturationText=M\u00E4ttnad:
-GTKColorChooserPanel.saturationMnemonic=77
-
-GTKColorChooserPanel.greenText=Gr\u00F6n:
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=V\u00E4rde:
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=Bl\u00E5:
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=F\u00E4rgnamn:
-GTKColorChooserPanel.colorNameMnemonic=70
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=Alla filer
-FileChooser.newFolderButtonText=Ny mapp
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=Mapp:
-FileChooser.newFolderNoDirectoryErrorTitleText=Fel
-FileChooser.newFolderNoDirectoryErrorText=Ett fel intr\u00E4ffade vid f\u00F6rs\u00F6k att skapa katalogen "{0}": Filen eller katalogen finns inte
-FileChooser.deleteFileButtonText=Ta bort fil
-FileChooser.deleteFileButtonMnemonic=66
-FileChooser.renameFileButtonText=\u00C4ndra namn p\u00E5 filen
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=Avbryt
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=OK
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=OK
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Spara
-FileChooser.openDialogTitleText=\u00D6ppna
-FileChooser.pathLabelText=Urval:
-FileChooser.filterLabelText=Filter:
-FileChooser.pathLabelMnemonic=85
-FileChooser.foldersLabelText=Mappar
-FileChooser.foldersLabelMnemonic=80
-FileChooser.filesLabelText=Filer
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=Avbryt dialogrutan Filv\u00E4ljare.
-FileChooser.saveButtonToolTipText=Spara vald fil.
-FileChooser.openButtonToolTipText=\u00D6ppna vald fil.
-
-FileChooser.renameFileDialogText=Namn\u00E4ndra fil "{0}" till
-FileChooser.renameFileErrorTitle=Fel
-FileChooser.renameFileErrorText=Fel vid namn\u00E4ndring av fil "{0}" till "{1}"
-
-# dummy resource added for translation automation
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=79
-# dummy resource added for translation automation
-OptionPane.cancelButtonText=Avbryt
-OptionPane.cancelButtonMnemonic=65
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=GTK-f\u00E4rgv\u00E4ljaren(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=&Nyans:
+
+GTKColorChooserPanel.red.textAndMnemonic=R\u00F6d(&R):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=M\u00E4ttnad(&M):
+
+GTKColorChooserPanel.green.textAndMnemonic=Gr\u00F6n(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=V\u00E4rde(&V):
+
+GTKColorChooserPanel.blue.textAndMnemonic=Bl\u00E5(&B):
+
+GTKColorChooserPanel.color.textAndMnemonic=F\u00E4rgnamn(&F):
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=Alla filer
+FileChooser.newFolderButton.textAndMnemonic=&Ny mapp
+FileChooser.newFolderDialog.textAndMnemonic=Mapp:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=Fel
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=Ett fel intr\u00E4ffade vid f\u00F6rs\u00F6k att skapa katalogen "{0}": Filen eller katalogen finns inte
+FileChooser.deleteFileButton.textAndMnemonic=Ta &bort fil
+FileChooser.renameFileButton.textAndMnemonic=\u00C4ndra namn p\u00E5 filen(&R)
+FileChooser.cancelButton.textAndMnemonic=&Avbryt
+FileChooser.saveButton.textAndMnemonic=&OK
+FileChooser.openButton.textAndMnemonic=&OK
+FileChooser.saveDialogTitle.textAndMnemonic=Spara
+FileChooser.openDialogTitle.textAndMnemonic=\u00D6ppna
+FileChooser.pathLabel.textAndMnemonic=&Urval:
+FileChooser.filterLabel.textAndMnemonic=Filter:
+FileChooser.foldersLabel.textAndMnemonic=Ma&ppar
+FileChooser.filesLabel.textAndMnemonic=&Filer
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan Filv\u00E4ljare.
+FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil.
+FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil.
+
+FileChooser.renameFileDialog.textAndMnemonic=Namn\u00E4ndra fil "{0}" till
+FileChooser.renameFileError.titleAndMnemonic=Fel
+FileChooser.renameFileError.textAndMnemonic=Fel vid namn\u00E4ndring av fil "{0}" till "{1}"
+
+# dummy resource added for translation automation
+OptionPane.okButton.textAndMnemonic=&OK
+# dummy resource added for translation automation
+OptionPane.cancelButton.textAndMnemonic=&Avbryt
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,84 +1,55 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK \u989C\u8272\u9009\u62E9\u5668(G)
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=\u8272\u8C03(H):
-GTKColorChooserPanel.hueMnemonic=72
-
-GTKColorChooserPanel.redText=\u7EA2\u8272(E):
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=\u9971\u548C\u5EA6(S):
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=\u7EFF\u8272(G):
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=\u503C(V):
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=\u84DD\u8272(B):
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=\u989C\u8272\u540D(N):
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=\u6240\u6709\u6587\u4EF6
-FileChooser.newFolderButtonText=\u65B0\u6587\u4EF6\u5939(N)
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=\u6587\u4EF6\u5939\u540D:
-FileChooser.newFolderNoDirectoryErrorTitleText=\u9519\u8BEF
-FileChooser.newFolderNoDirectoryErrorText=\u521B\u5EFA\u76EE\u5F55 "{0}" \u65F6\u51FA\u9519: \u6CA1\u6709\u6B64\u7C7B\u6587\u4EF6\u6216\u76EE\u5F55
-FileChooser.deleteFileButtonText=\u5220\u9664\u6587\u4EF6(L)
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=\u91CD\u547D\u540D\u6587\u4EF6(R)
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\u786E\u5B9A
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=\u786E\u5B9A
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u4FDD\u5B58
-FileChooser.openDialogTitleText=\u6253\u5F00
-FileChooser.pathLabelText=\u9009\u5B9A\u5185\u5BB9(S):
-FileChooser.filterLabelText=\u7B5B\u9009\u5668:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=\u6587\u4EF6\u5939(D)
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=\u6587\u4EF6(F)
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=\u4E2D\u6B62\u6587\u4EF6\u9009\u62E9\u5668\u5BF9\u8BDD\u6846\u3002
-FileChooser.saveButtonToolTipText=\u4FDD\u5B58\u6240\u9009\u6587\u4EF6\u3002
-FileChooser.openButtonToolTipText=\u6253\u5F00\u6240\u9009\u6587\u4EF6\u3002
-
-FileChooser.renameFileDialogText=\u5C06\u6587\u4EF6 "{0}" \u91CD\u547D\u540D\u4E3A
-FileChooser.renameFileErrorTitle=\u9519\u8BEF
-FileChooser.renameFileErrorText=\u5C06\u6587\u4EF6 "{0}" \u91CD\u547D\u540D\u4E3A "{1}" \u65F6\u51FA\u9519
-
-#OptionPane.okButtonMnemonic=79
-#OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=GTK \u989C\u8272\u9009\u62E9\u5668(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=\u8272\u8C03(&H):
+
+GTKColorChooserPanel.red.textAndMnemonic=\u7EA2\u8272(&E):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=\u9971\u548C\u5EA6(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=\u7EFF\u8272(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=\u503C(&V):
+
+GTKColorChooserPanel.blue.textAndMnemonic=\u84DD\u8272(&B):
+
+GTKColorChooserPanel.color.textAndMnemonic=\u989C\u8272\u540D(&N):
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u6240\u6709\u6587\u4EF6
+FileChooser.newFolderButton.textAndMnemonic=\u65B0\u6587\u4EF6\u5939(&N)
+FileChooser.newFolderDialog.textAndMnemonic=\u6587\u4EF6\u5939\u540D:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=\u9519\u8BEF
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=\u521B\u5EFA\u76EE\u5F55 "{0}" \u65F6\u51FA\u9519: \u6CA1\u6709\u6B64\u7C7B\u6587\u4EF6\u6216\u76EE\u5F55
+FileChooser.deleteFileButton.textAndMnemonic=\u5220\u9664\u6587\u4EF6(&L)
+FileChooser.renameFileButton.textAndMnemonic=\u91CD\u547D\u540D\u6587\u4EF6(&R)
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=\u786E\u5B9A(&O)
+FileChooser.openButton.textAndMnemonic=\u786E\u5B9A(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\u4FDD\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u6253\u5F00
+FileChooser.pathLabel.textAndMnemonic=\u9009\u5B9A\u5185\u5BB9(&S):
+FileChooser.filterLabel.textAndMnemonic=\u7B5B\u9009\u5668:
+FileChooser.foldersLabel.textAndMnemonic=\u6587\u4EF6\u5939(&D)
+FileChooser.filesLabel.textAndMnemonic=\u6587\u4EF6(&F)
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u6587\u4EF6\u9009\u62E9\u5668\u5BF9\u8BDD\u6846\u3002
+FileChooser.saveButtonToolTip.textAndMnemonic=\u4FDD\u5B58\u6240\u9009\u6587\u4EF6\u3002
+FileChooser.openButtonToolTip.textAndMnemonic=\u6253\u5F00\u6240\u9009\u6587\u4EF6\u3002
+
+FileChooser.renameFileDialog.textAndMnemonic=\u5C06\u6587\u4EF6 "{0}" \u91CD\u547D\u540D\u4E3A
+FileChooser.renameFileError.titleAndMnemonic=\u9519\u8BEF
+FileChooser.renameFileError.textAndMnemonic=\u5C06\u6587\u4EF6 "{0}" \u91CD\u547D\u540D\u4E3A "{1}" \u65F6\u51FA\u9519
+
+
--- a/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,84 +1,55 @@
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-
-
-
-# GTK specific properties
-
-# GTK color chooser properties:
-GTKColorChooserPanel.nameText=GTK \u8272\u5F69\u9078\u64C7\u5668(G)
-# mnemonic as a VK_ constant
-GTKColorChooserPanel.mnemonic=71
-# Can also define GTKColorChooserPanel.dispalyedMnemonicIndex if you
-# want an index other than would normally be underlined by
-# GTKColorChooserPanel.mnemonic to be underlined. This is only useful
-# if GTKColorChooserPanel.nameText defines the mnemonic character more
-# than once and you want a character other than the first underlined.
-
-# Text and mnemonics for the spinner. You can also defined a different
-# index for the mnemonic via xxxMnemonicIndex, for example
-# GTKColorChooserPanel.hueMnemonicIndex=1 would indicate the second
-# character of GTKColorChooserPanel.hueText should be underlined to
-# represent the mnemonic.
-GTKColorChooserPanel.hueText=\u8272\u8ABF(H)\uFF1A
-GTKColorChooserPanel.hueMnemonic=72
-
-GTKColorChooserPanel.redText=\u7D05(E):
-GTKColorChooserPanel.redMnemonic=69
-
-GTKColorChooserPanel.saturationText=\u5F69\u5EA6(S):
-GTKColorChooserPanel.saturationMnemonic=83
-
-GTKColorChooserPanel.greenText=\u7DA0(G):
-GTKColorChooserPanel.greenMnemonic=71
-
-GTKColorChooserPanel.valueText=\u503C(V):
-GTKColorChooserPanel.valueMnemonic=86
-
-GTKColorChooserPanel.blueText=\u85CD(B):
-GTKColorChooserPanel.blueMnemonic=66
-
-GTKColorChooserPanel.colorNameText=\u984F\u8272\u540D\u7A31(N):
-GTKColorChooserPanel.colorNameMnemonic=78
-
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.acceptAllFileFilterText=\u6240\u6709\u6A94\u6848
-FileChooser.newFolderButtonText=\u65B0\u5EFA\u8CC7\u6599\u593E(N)
-FileChooser.newFolderButtonMnemonic=78
-FileChooser.newFolderDialogText=\u8CC7\u6599\u593E\u540D\u7A31:
-FileChooser.newFolderNoDirectoryErrorTitleText=\u932F\u8AA4
-FileChooser.newFolderNoDirectoryErrorText=\u5EFA\u7ACB\u76EE\u9304 "{0}" \u6642\u767C\u751F\u932F\u8AA4: \u6C92\u6709\u6B64\u6A94\u6848\u6216\u76EE\u9304
-FileChooser.deleteFileButtonText=\u522A\u9664\u6A94\u6848(L)
-FileChooser.deleteFileButtonMnemonic=76
-FileChooser.renameFileButtonText=\u91CD\u65B0\u547D\u540D\u6A94\u6848(R)
-FileChooser.renameFileButtonMnemonic=82
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\u78BA\u5B9A
-FileChooser.saveButtonMnemonic=79
-FileChooser.openButtonText=\u78BA\u5B9A
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u5132\u5B58
-FileChooser.openDialogTitleText=\u958B\u555F
-FileChooser.pathLabelText=\u9078\u53D6(S):
-FileChooser.filterLabelText=\u7BE9\u9078:
-FileChooser.pathLabelMnemonic=83
-FileChooser.foldersLabelText=\u8CC7\u6599\u593E(D)
-FileChooser.foldersLabelMnemonic=68
-FileChooser.filesLabelText=\u6A94\u6848(F)
-FileChooser.filesLabelMnemonic=70
-
-FileChooser.cancelButtonToolTipText=\u4E2D\u6B62\u6A94\u6848\u9078\u64C7\u5668\u5C0D\u8A71\u65B9\u584A\u3002
-FileChooser.saveButtonToolTipText=\u5132\u5B58\u9078\u53D6\u7684\u6A94\u6848\u3002
-FileChooser.openButtonToolTipText=\u958B\u555F\u9078\u53D6\u7684\u6A94\u6848\u3002
-
-FileChooser.renameFileDialogText=\u5C07\u6A94\u6848 "{0}" \u91CD\u65B0\u547D\u540D\u70BA
-FileChooser.renameFileErrorTitle=\u932F\u8AA4
-FileChooser.renameFileErrorText=\u5C07\u6A94\u6848 "{0}" \u91CD\u65B0\u547D\u540D\u70BA "{1}" \u6642\u51FA\u73FE\u932F\u8AA4
-
-#OptionPane.okButtonMnemonic=79
-#OptionPane.cancelButtonMnemonic=67
-
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+
+
+
+# GTK specific properties
+
+# GTK color chooser properties:
+GTKColorChooserPanel.textAndMnemonic=GTK \u8272\u5F69\u9078\u64C7\u5668(&G)
+# mnemonic as a VK_ constant
+
+GTKColorChooserPanel.hue.textAndMnemonic=\u8272\u8ABF(&H)\uFF1A
+
+GTKColorChooserPanel.red.textAndMnemonic=\u7D05(&E):
+
+GTKColorChooserPanel.saturation.textAndMnemonic=\u5F69\u5EA6(&S):
+
+GTKColorChooserPanel.green.textAndMnemonic=\u7DA0(&G):
+
+GTKColorChooserPanel.value.textAndMnemonic=\u503C(&V):
+
+GTKColorChooserPanel.blue.textAndMnemonic=\u85CD(&B):
+
+GTKColorChooserPanel.color.textAndMnemonic=\u984F\u8272\u540D\u7A31(&N):
+
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u6240\u6709\u6A94\u6848
+FileChooser.newFolderButton.textAndMnemonic=\u65B0\u5EFA\u8CC7\u6599\u593E(&N)
+FileChooser.newFolderDialog.textAndMnemonic=\u8CC7\u6599\u593E\u540D\u7A31:
+FileChooser.newFolderNoDirectoryErrorTitle.textAndMnemonic=\u932F\u8AA4
+FileChooser.newFolderNoDirectoryError.textAndMnemonic=\u5EFA\u7ACB\u76EE\u9304 "{0}" \u6642\u767C\u751F\u932F\u8AA4: \u6C92\u6709\u6B64\u6A94\u6848\u6216\u76EE\u9304
+FileChooser.deleteFileButton.textAndMnemonic=\u522A\u9664\u6A94\u6848(&L)
+FileChooser.renameFileButton.textAndMnemonic=\u91CD\u65B0\u547D\u540D\u6A94\u6848(&R)
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=\u78BA\u5B9A(&O)
+FileChooser.openButton.textAndMnemonic=\u78BA\u5B9A(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\u5132\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u958B\u555F
+FileChooser.pathLabel.textAndMnemonic=\u9078\u53D6(&S):
+FileChooser.filterLabel.textAndMnemonic=\u7BE9\u9078:
+FileChooser.foldersLabel.textAndMnemonic=\u8CC7\u6599\u593E(&D)
+FileChooser.filesLabel.textAndMnemonic=\u6A94\u6848(&F)
+
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u6A94\u6848\u9078\u64C7\u5668\u5C0D\u8A71\u65B9\u584A\u3002
+FileChooser.saveButtonToolTip.textAndMnemonic=\u5132\u5B58\u9078\u53D6\u7684\u6A94\u6848\u3002
+FileChooser.openButtonToolTip.textAndMnemonic=\u958B\u555F\u9078\u53D6\u7684\u6A94\u6848\u3002
+
+FileChooser.renameFileDialog.textAndMnemonic=\u5C07\u6A94\u6848 "{0}" \u91CD\u65B0\u547D\u540D\u70BA
+FileChooser.renameFileError.titleAndMnemonic=\u932F\u8AA4
+FileChooser.renameFileError.textAndMnemonic=\u5C07\u6A94\u6848 "{0}" \u91CD\u65B0\u547D\u540D\u70BA "{1}" \u6642\u51FA\u73FE\u932F\u8AA4
+
+
--- a/src/share/classes/com/sun/jndi/dns/DnsClient.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/jndi/dns/DnsClient.java	Tue May 08 07:34:53 2012 -0700
@@ -577,8 +577,8 @@
         // enqueue only the first response, responses for retries are ignored.
         //
         synchronized (queuesLock) {
-            if (reqs.contains(xid)) { // enqueue only the first response
-                resps.put(xid, pkt);
+            if (reqs.contains(hdr.xid)) { // enqueue only the first response
+                resps.put(hdr.xid, pkt);
             }
         }
 
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,189 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-# 
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Generic File
-FileChooser.directoryDescriptionText=Directory
-FileChooser.newFolderErrorText=Error creating new folder
-FileChooser.newFolderErrorSeparator= : 
-FileChooser.newFolderParentDoesntExistTitleText=Unable to create folder
-FileChooser.newFolderParentDoesntExistText=Unable to create the folder.\n\nThe system cannot find the path specified.
-FileChooser.renameErrorTitleText=Error Renaming File or Folder
-FileChooser.renameErrorText=Cannot rename {0}
-FileChooser.renameErrorFileExistsText=Cannot rename {0}: A file with the name you specified already exists. \
-  Specify a different file name. 
-FileChooser.acceptAllFileFilterText=All Files
-FileChooser.cancelButtonText=Cancel
-#FileChooser.cancelButtonMnemonic=67 // not needed?
-FileChooser.saveButtonText=Save
-FileChooser.saveButtonMnemonic=83 // not needed?
-FileChooser.openButtonText=Open
-FileChooser.openButtonMnemonic=79 //not needed?
-FileChooser.saveDialogTitleText=Save
-FileChooser.openDialogTitleText=Open
-FileChooser.updateButtonText=Update
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=Help
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=Open
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=New Folder
-FileChooser.win32.newFolder.subsequent=New Folder ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Abort file chooser dialog
-FileChooser.saveButtonToolTipText=Save selected file
-FileChooser.openButtonToolTipText=Open selected file
-FileChooser.updateButtonToolTipText=Update directory listing
-FileChooser.helpButtonToolTipText=FileChooser help
-FileChooser.directoryOpenButtonToolTipText=Open selected directory
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Preview
-ColorChooser.okText=OK
-ColorChooser.cancelText=Cancel
-ColorChooser.resetText=Reset
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=Sample Text  Sample Text
-ColorChooser.swatchesNameText=Swatches
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=Recent:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Hue
-ColorChooser.hsvSaturationText=Saturation
-ColorChooser.hsvValueText=Value
-ColorChooser.hsvTransparencyText=Transparency
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Hue
-ColorChooser.hslSaturationText=Saturation
-ColorChooser.hslLightnessText=Lightness
-ColorChooser.hslTransparencyText=Transparency
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=Red
-ColorChooser.rgbRedMnemonic=68 // not needed?
-ColorChooser.rgbGreenText=Green
-ColorChooser.rgbGreenMnemonic=78 // not needed?
-ColorChooser.rgbBlueText=Blue
-ColorChooser.rgbBlueMnemonic=66 // not needed?
-ColorChooser.rgbAlphaText=Alpha
-ColorChooser.rgbHexCodeText=Color Code
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Cyan
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Yellow
-ColorChooser.cmykBlackText=Black
-ColorChooser.cmykAlphaText=Alpha
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=Yes
-OptionPane.yesButtonMnemonic=89
-OptionPane.noButtonText=No
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-#OptionPane.okButtonMnemonic=0
-OptionPane.cancelButtonText=Cancel
-#OptionPane.cancelButtonMnemonic=0
-OptionPane.titleText=Select an Option
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Input
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Message
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Printing
-PrintingDialog.titleAbortingText=Printing (Aborting)
-
-PrintingDialog.contentInitialText=Printing in progress...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=Printed page {0}...
-
-PrintingDialog.contentAbortingText=Printing aborting...
-
-PrintingDialog.abortButtonText=Abort
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Abort Printing
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Minimize
-InternalFrame.maxButtonToolTip=Maximize
-InternalFrame.restoreButtonToolTip=Restore
-InternalFrame.closeButtonToolTip=Close
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Restore
-InternalFrameTitlePane.moveButtonText=Move
-InternalFrameTitlePane.sizeButtonText=Size
-InternalFrameTitlePane.minimizeButtonText=Minimize
-InternalFrameTitlePane.maximizeButtonText=Maximize
-InternalFrameTitlePane.closeButtonText=Close
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Submit Query
-FormView.resetButtonText=Reset
-FormView.browseFileButtonText=Browse...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=style change
-AbstractDocument.additionText=addition
-AbstractDocument.deletionText=deletion
-AbstractDocument.undoText=Undo
-AbstractDocument.redoText=Redo
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=click
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=Undo
-AbstractUndoableEdit.redoText=Redo
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Progress...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=left button
-SplitPane.rightButtonText=right button
-# Used for Isindex
-IsindexView.prompt=This is a searchable index.  Enter search keywords:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Iconify
-InternalFrameTitlePane.maximizeButtonAccessibleName=Maximize
-InternalFrameTitlePane.closeButtonAccessibleName=Close
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+#
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Generic File
+FileChooser.directoryDescription.textAndMnemonic=Directory
+FileChooser.newFolderError.textAndMnemonic=Error creating new folder
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Unable to create folder
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=Unable to create the folder.\n\nThe system cannot find the path specified.
+FileChooser.renameErrorTitle.textAndMnemonic=Error Renaming File or Folder
+FileChooser.renameError.textAndMnemonic=Cannot rename {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=Cannot rename {0}: A file with the name you specified already exists. \
+  Specify a different file name.
+FileChooser.acceptAllFileFilter.textAndMnemonic=All Files
+FileChooser.cancelButton.textAndMnemonic=Cancel
+FileChooser.saveButton.textAndMnemonic=&Save
+FileChooser.openButton.textAndMnemonic=&Open
+FileChooser.saveDialogTitle.textAndMnemonic=Save
+FileChooser.openDialogTitle.textAndMnemonic=Open
+FileChooser.updateButton.textAndMnemonic=&Update
+FileChooser.helpButton.textAndMnemonic=&Help
+FileChooser.directoryOpenButton.textAndMnemonic=&Open
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=New Folder
+FileChooser.win32.newFolder.subsequent=New Folder ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Abort file chooser dialog
+FileChooser.saveButtonToolTip.textAndMnemonic=Save selected file
+FileChooser.openButtonToolTip.textAndMnemonic=Open selected file
+FileChooser.updateButtonToolTip.textAndMnemonic=Update directory listing
+FileChooser.helpButtonToolTip.textAndMnemonic=FileChooser help
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Open selected directory
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Preview
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Cancel
+ColorChooser.reset.textAndMnemonic=&Reset
+ColorChooser.sample.textAndMnemonic=Sample Text  Sample Text
+ColorChooser.swatches.textAndMnemonic=&Swatches
+ColorChooser.swatchesRecent.textAndMnemonic=Recent:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Hue
+ColorChooser.hsvSaturation.textAndMnemonic=Saturation
+ColorChooser.hsvValue.textAndMnemonic=Value
+ColorChooser.hsvTransparency.textAndMnemonic=Transparency
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Hue
+ColorChooser.hslSaturation.textAndMnemonic=Saturation
+ColorChooser.hslLightness.textAndMnemonic=Lightness
+ColorChooser.hslTransparency.textAndMnemonic=Transparency
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=Re&d
+ColorChooser.rgbGreen.textAndMnemonic=Gree&n
+ColorChooser.rgbBlue.textAndMnemonic=&Blue
+ColorChooser.rgbAlpha.textAndMnemonic=Alpha
+ColorChooser.rgbHexCode.textAndMnemonic=&Color Code
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Cyan
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Yellow
+ColorChooser.cmykBlack.textAndMnemonic=Black
+ColorChooser.cmykAlpha.textAndMnemonic=Alpha
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=&Yes
+OptionPane.noButton.textAndMnemonic=&No
+OptionPane.okButton.textAndMnemonic=OK
+#OptionPane.okButtonMnemonic=0
+OptionPane.cancelButton.textAndMnemonic=Cancel
+#OptionPane.cancelButtonMnemonic=0
+OptionPane.title.textAndMnemonic=Select an Option
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Input
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Message
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Printing
+PrintingDialog.titleAborting.textAndMnemonic=Printing (Aborting)
+
+PrintingDialog.contentInitial.textAndMnemonic=Printing in progress...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=Printed page {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=Printing aborting...
+
+PrintingDialog.abortButton.textAndMnemonic=&Abort
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Abort Printing
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Minimize
+InternalFrame.maxButtonToolTip=Maximize
+InternalFrame.restoreButtonToolTip=Restore
+InternalFrame.closeButtonToolTip=Close
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Restore
+InternalFrameTitlePane.moveButton.textAndMnemonic=Move
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Size
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Minimize
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Maximize
+InternalFrameTitlePane.closeButton.textAndMnemonic=Close
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Submit Query
+FormView.resetButton.textAndMnemonic=Reset
+FormView.browseFileButton.textAndMnemonic=Browse...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=style change
+AbstractDocument.addition.textAndMnemonic=addition
+AbstractDocument.deletion.textAndMnemonic=deletion
+AbstractDocument.undo.textAndMnemonic=Undo
+AbstractDocument.redo.textAndMnemonic=Redo
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=click
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=Undo
+AbstractUndoableEdit.redo.textAndMnemonic=Redo
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Progress...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=left button
+SplitPane.rightButton.textAndMnemonic=right button
+# Used for Isindex
+IsindexView.prompt=This is a searchable index.  Enter search keywords:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Iconify
+InternalFrameTitlePane.maximizeButtonAccessibleName=Maximize
+InternalFrameTitlePane.closeButtonAccessibleName=Close
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,187 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Allgemeine Datei
-FileChooser.directoryDescriptionText=Verzeichnis
-FileChooser.newFolderErrorText=Fehler beim Erstellen eines neuen Ordners
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=Ordner kann nicht erstellt werden
-FileChooser.newFolderParentDoesntExistText=Ordner kann nicht erstellt werden.\n\nSystem kann den angegebenen Pfad nicht finden.
-FileChooser.renameErrorTitleText=Fehler beim Umbenennen von Datei oder Ordner
-FileChooser.renameErrorText={0} kann nicht umbenannt werden
-FileChooser.renameErrorFileExistsText={0} kann nicht umbenannt werden: Es ist bereits eine Datei mit dem angegebenen Namen vorhanden. Geben Sie einen anderen Dateinamen an.
-FileChooser.acceptAllFileFilterText=Alle Dateien
-FileChooser.cancelButtonText=Abbrechen
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=Speichern
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\u00D6ffnen
-FileChooser.openButtonMnemonic=70
-FileChooser.saveDialogTitleText=Speichern
-FileChooser.openDialogTitleText=\u00D6ffnen
-FileChooser.updateButtonText=Aktualisieren
-FileChooser.updateButtonMnemonic=75
-FileChooser.helpButtonText=Hilfe
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\u00D6ffnen
-FileChooser.directoryOpenButtonMnemonic=70
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Neuer Ordner
-FileChooser.win32.newFolder.subsequent=Neuer Ordner ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Dialogfeld f\u00FCr Dateiauswahl schlie\u00DFen
-FileChooser.saveButtonToolTipText=Ausgew\u00E4hlte Datei speichern
-FileChooser.openButtonToolTipText=Ausgew\u00E4hlte Datei \u00F6ffnen
-FileChooser.updateButtonToolTipText=Verzeichnisliste aktualisieren
-FileChooser.helpButtonToolTipText=FileChooser-Hilfe
-FileChooser.directoryOpenButtonToolTipText=Ausgew\u00E4hltes Verzeichnis \u00F6ffnen
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Vorschau
-ColorChooser.okText=OK
-ColorChooser.cancelText=Abbrechen
-ColorChooser.resetText=Zur\u00FCcksetzen
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=90
-ColorChooser.sampleText=Beispieltext  Beispieltext
-ColorChooser.swatchesNameText=Swatches
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=Aktuell:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Farbton
-ColorChooser.hsvSaturationText=S\u00E4ttigung
-ColorChooser.hsvValueText=Wert
-ColorChooser.hsvTransparencyText=Transparenz
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Farbton
-ColorChooser.hslSaturationText=S\u00E4ttigung
-ColorChooser.hslLightnessText=Helligkeit
-ColorChooser.hslTransparencyText=Transparenz
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=Rot
-ColorChooser.rgbRedMnemonic=84
-ColorChooser.rgbGreenText=Gr\u00FCn
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=Blau
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alpha
-ColorChooser.rgbHexCodeText=Farbcode
-ColorChooser.rgbHexCodeMnemonic=70
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Zyan
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Gelb
-ColorChooser.cmykBlackText=Schwarz
-ColorChooser.cmykAlphaText=Alpha
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=Ja
-OptionPane.yesButtonMnemonic=74
-OptionPane.noButtonText=Nein
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Abbrechen
-OptionPane.cancelButtonMnemonic=A
-OptionPane.titleText=Option ausw\u00E4hlen
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Eingabe
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Meldung
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Drucken
-PrintingDialog.titleAbortingText=Drucken (Abbruch)
-
-PrintingDialog.contentInitialText=Druckvorgang l\u00E4uft...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=Seite {0} wurde gedruckt...
-
-PrintingDialog.contentAbortingText=Druckvorgang wird abgebrochen...
-
-PrintingDialog.abortButtonText=Abbruch
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Druckvorgang abbrechen
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Minimieren
-InternalFrame.maxButtonToolTip=Maximieren
-InternalFrame.restoreButtonToolTip=Wiederherstellen
-InternalFrame.closeButtonToolTip=Schlie\u00DFen
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Wiederherstellen
-InternalFrameTitlePane.moveButtonText=Verschieben
-InternalFrameTitlePane.sizeButtonText=Gr\u00F6\u00DFe
-InternalFrameTitlePane.minimizeButtonText=Minimieren
-InternalFrameTitlePane.maximizeButtonText=Maximieren
-InternalFrameTitlePane.closeButtonText=Schlie\u00DFen
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Abfrage weiterleiten
-FormView.resetButtonText=Zur\u00FCcksetzen
-FormView.browseFileButtonText=Durchsuchen...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=Formatvorlagen\u00E4nderung
-AbstractDocument.additionText=Hinzuf\u00FCgen
-AbstractDocument.deletionText=L\u00F6schen
-AbstractDocument.undoText=R\u00FCckg\u00E4ngig
-AbstractDocument.redoText=Wiederherstellen
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=Klicken
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=R\u00FCckg\u00E4ngig
-AbstractUndoableEdit.redoText=Wiederherstellen
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Fortschritt...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=linke Schaltfl\u00E4che
-SplitPane.rightButtonText=rechte Schaltfl\u00E4che
-# Used for Isindex
-IsindexView.prompt=Dieser Index kann durchsucht werden. Geben Sie Schl\u00FCsselw\u00F6rter f\u00FCr die Suche ein:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Als Symbol darstellen
-InternalFrameTitlePane.maximizeButtonAccessibleName=Maximieren
-InternalFrameTitlePane.closeButtonAccessibleName=Schlie\u00DFen
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+#
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Allgemeine Datei
+FileChooser.directoryDescription.textAndMnemonic=Verzeichnis
+FileChooser.newFolderError.textAndMnemonic=Fehler beim Erstellen eines neuen Ordners
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Ordner kann nicht erstellt werden
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=Ordner kann nicht erstellt werden.\n\nSystem kann den angegebenen Pfad nicht finden.
+FileChooser.renameErrorTitle.textAndMnemonic=Fehler beim Umbenennen von Datei oder Ordner
+FileChooser.renameError.textAndMnemonic={0} kann nicht umbenannt werden
+FileChooser.renameErrorFileExists.textAndMnemonic={0} kann nicht umbenannt werden: Es ist bereits eine Datei mit dem angegebenen Namen vorhanden. Geben Sie einen anderen Dateinamen an.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Alle Dateien
+FileChooser.cancelButton.textAndMnemonic=&Abbrechen
+FileChooser.saveButton.textAndMnemonic=&Speichern
+FileChooser.openButton.textAndMnemonic=\u00D6ffnen(&F)
+FileChooser.saveDialogTitle.textAndMnemonic=Speichern
+FileChooser.openDialogTitle.textAndMnemonic=\u00D6ffnen
+FileChooser.updateButton.textAndMnemonic=A&ktualisieren
+FileChooser.helpButton.textAndMnemonic=&Hilfe
+FileChooser.directoryOpenButton.textAndMnemonic=\u00D6ffnen(&F)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Neuer Ordner
+FileChooser.win32.newFolder.subsequent=Neuer Ordner ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Dialogfeld f\u00FCr Dateiauswahl schlie\u00DFen
+FileChooser.saveButtonToolTip.textAndMnemonic=Ausgew\u00E4hlte Datei speichern
+FileChooser.openButtonToolTip.textAndMnemonic=Ausgew\u00E4hlte Datei \u00F6ffnen
+FileChooser.updateButtonToolTip.textAndMnemonic=Verzeichnisliste aktualisieren
+FileChooser.helpButtonToolTip.textAndMnemonic=FileChooser-Hilfe
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Ausgew\u00E4hltes Verzeichnis \u00F6ffnen
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Vorschau
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Abbrechen
+ColorChooser.reset.textAndMnemonic=Zur\u00FCcksetzen(&Z)
+ColorChooser.sample.textAndMnemonic=Beispieltext  Beispieltext
+ColorChooser.swatches.textAndMnemonic=&Swatches
+ColorChooser.swatchesRecent.textAndMnemonic=Aktuell:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Farbton
+ColorChooser.hsvSaturation.textAndMnemonic=S\u00E4ttigung
+ColorChooser.hsvValue.textAndMnemonic=Wert
+ColorChooser.hsvTransparency.textAndMnemonic=Transparenz
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Farbton
+ColorChooser.hslSaturation.textAndMnemonic=S\u00E4ttigung
+ColorChooser.hslLightness.textAndMnemonic=Helligkeit
+ColorChooser.hslTransparency.textAndMnemonic=Transparenz
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=Ro&t
+ColorChooser.rgbGreen.textAndMnemonic=Gr\u00FCn(&N)
+ColorChooser.rgbBlue.textAndMnemonic=&Blau
+ColorChooser.rgbAlpha.textAndMnemonic=Alpha
+ColorChooser.rgbHexCode.textAndMnemonic=&Farbcode
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Zyan
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Gelb
+ColorChooser.cmykBlack.textAndMnemonic=Schwarz
+ColorChooser.cmykAlpha.textAndMnemonic=Alpha
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=&Ja
+OptionPane.noButton.textAndMnemonic=&Nein
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=&Abbrechen
+OptionPane.title.textAndMnemonic=Option ausw\u00E4hlen
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Eingabe
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Meldung
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Drucken
+PrintingDialog.titleAborting.textAndMnemonic=Drucken (Abbruch)
+
+PrintingDialog.contentInitial.textAndMnemonic=Druckvorgang l\u00E4uft...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=Seite {0} wurde gedruckt...
+
+PrintingDialog.contentAborting.textAndMnemonic=Druckvorgang wird abgebrochen...
+
+PrintingDialog.abortButton.textAndMnemonic=&Abbruch
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Druckvorgang abbrechen
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Minimieren
+InternalFrame.maxButtonToolTip=Maximieren
+InternalFrame.restoreButtonToolTip=Wiederherstellen
+InternalFrame.closeButtonToolTip=Schlie\u00DFen
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Wiederherstellen
+InternalFrameTitlePane.moveButton.textAndMnemonic=Verschieben
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Gr\u00F6\u00DFe
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Minimieren
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Maximieren
+InternalFrameTitlePane.closeButton.textAndMnemonic=Schlie\u00DFen
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Abfrage weiterleiten
+FormView.resetButton.textAndMnemonic=Zur\u00FCcksetzen
+FormView.browseFileButton.textAndMnemonic=Durchsuchen...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=Formatvorlagen\u00E4nderung
+AbstractDocument.addition.textAndMnemonic=Hinzuf\u00FCgen
+AbstractDocument.deletion.textAndMnemonic=L\u00F6schen
+AbstractDocument.undo.textAndMnemonic=R\u00FCckg\u00E4ngig
+AbstractDocument.redo.textAndMnemonic=Wiederherstellen
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=Klicken
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=R\u00FCckg\u00E4ngig
+AbstractUndoableEdit.redo.textAndMnemonic=Wiederherstellen
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Fortschritt...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=linke Schaltfl\u00E4che
+SplitPane.rightButton.textAndMnemonic=rechte Schaltfl\u00E4che
+# Used for Isindex
+IsindexView.prompt=Dieser Index kann durchsucht werden. Geben Sie Schl\u00FCsselw\u00F6rter f\u00FCr die Suche ein:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Als Symbol darstellen
+InternalFrameTitlePane.maximizeButtonAccessibleName=Maximieren
+InternalFrameTitlePane.closeButtonAccessibleName=Schlie\u00DFen
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Archivo Gen\u00E9rico
-FileChooser.directoryDescriptionText=Directorio
-FileChooser.newFolderErrorText=Error al crear una nueva carpeta
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=No se ha podido crear la carpeta
-FileChooser.newFolderParentDoesntExistText=No se ha podido crear la carpeta.\n\nEl sistema no puede encontrar la ruta de acceso especificada.
-FileChooser.renameErrorTitleText=Error al cambiar el nombre del archivo o carpeta
-FileChooser.renameErrorText=No se puede cambiar el nombre de {0}
-FileChooser.renameErrorFileExistsText=No se puede cambiar el nombre de {0}: ya existe un archivo con el nombre especificado. Especifique otro nombre de archivo.
-FileChooser.acceptAllFileFilterText=Todos los Archivos
-FileChooser.cancelButtonText=Cancelar
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=Guardar
-FileChooser.saveButtonMnemonic=71
-FileChooser.openButtonText=Abrir
-FileChooser.openButtonMnemonic=66
-FileChooser.saveDialogTitleText=Guardar
-FileChooser.openDialogTitleText=Abrir
-FileChooser.updateButtonText=Actualizar
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=Ayuda
-FileChooser.helpButtonMnemonic=89
-FileChooser.directoryOpenButtonText=Abrir
-FileChooser.directoryOpenButtonMnemonic=65
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Nueva Carpeta
-FileChooser.win32.newFolder.subsequent=Nueva Carpeta ({0})
-FileChooser.other.newFolder=Nueva Carpeta
-FileChooser.other.newFolder.subsequent=Nueva Carpeta.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Cuadro de di\u00E1logo para abortar el selector de archivos
-FileChooser.saveButtonToolTipText=Guardar archivo seleccionado
-FileChooser.openButtonToolTipText=Abrir archivo seleccionado
-FileChooser.updateButtonToolTipText=Actualizar lista de directorios
-FileChooser.helpButtonToolTipText=Ayuda del Selector de Archivos
-FileChooser.directoryOpenButtonToolTipText=Abrir directorio seleccionado
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Presentaci\u00F3n Preliminar
-ColorChooser.okText=Aceptar
-ColorChooser.cancelText=Cancelar
-ColorChooser.resetText=Restablecer
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=Texto de Ejemplo  Texto de Ejemplo
-ColorChooser.swatchesNameText=Muestras
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=Reciente:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Matiz
-ColorChooser.hsvSaturationText=Saturaci\u00F3n
-ColorChooser.hsvValueText=Valor
-ColorChooser.hsvTransparencyText=Transparencia
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Matiz
-ColorChooser.hslSaturationText=Saturaci\u00F3n
-ColorChooser.hslLightnessText=Iluminaci\u00F3n
-ColorChooser.hslTransparencyText=Transparencia
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=Rojo
-ColorChooser.rgbRedMnemonic=74
-ColorChooser.rgbGreenText=Verde
-ColorChooser.rgbGreenMnemonic=86
-ColorChooser.rgbBlueText=Azul
-ColorChooser.rgbBlueMnemonic=90
-ColorChooser.rgbAlphaText=Alfa
-ColorChooser.rgbHexCodeText=C\u00F3digo de Color
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Cian
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Amarillo
-ColorChooser.cmykBlackText=Negro
-ColorChooser.cmykAlphaText=Alfa
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=S\u00ED
-OptionPane.yesButtonMnemonic=83
-OptionPane.noButtonText=No
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=Aceptar
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Cancelar
-OptionPane.cancelButtonMnemonic=C
-OptionPane.titleText=Seleccionar una Opci\u00F3n
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Entrada
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Mensaje
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Impresi\u00F3n
-PrintingDialog.titleAbortingText=Impresi\u00F3n (Abortando)
-
-PrintingDialog.contentInitialText=Impresi\u00F3n en curso...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=P\u00E1gina impresa {0}...
-
-PrintingDialog.contentAbortingText=Abortando la impresi\u00F3n...
-
-PrintingDialog.abortButtonText=Abortar
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Abortar Impresi\u00F3n
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Minimizar
-InternalFrame.maxButtonToolTip=Maximizar
-InternalFrame.restoreButtonToolTip=Restaurar
-InternalFrame.closeButtonToolTip=Cerrar
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Restaurar
-InternalFrameTitlePane.moveButtonText=Mover
-InternalFrameTitlePane.sizeButtonText=Tama\u00F1o
-InternalFrameTitlePane.minimizeButtonText=Minimizar
-InternalFrameTitlePane.maximizeButtonText=Maximizar
-InternalFrameTitlePane.closeButtonText=Cerrar
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Enviar Consulta
-FormView.resetButtonText=Restablecer
-FormView.browseFileButtonText=Examinar...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=cambio de estilo
-AbstractDocument.additionText=agregaci\u00F3n
-AbstractDocument.deletionText=supresi\u00F3n
-AbstractDocument.undoText=Deshacer
-AbstractDocument.redoText=Rehacer
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=hacer clic
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=Deshacer
-AbstractUndoableEdit.redoText=Rehacer
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Progreso...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=bot\u00F3n izquierdo
-SplitPane.rightButtonText=bot\u00F3n derecho
-# Used for Isindex
-IsindexView.prompt=En este \u00EDndice se pueden efectuar b\u00FAsquedas. Escriba las palabras clave de b\u00FAsqueda:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Convertir en Icono
-InternalFrameTitlePane.maximizeButtonAccessibleName=Maximizar
-InternalFrameTitlePane.closeButtonAccessibleName=Cerrar
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Archivo Gen\u00E9rico
+FileChooser.directoryDescription.textAndMnemonic=Directorio
+FileChooser.newFolderError.textAndMnemonic=Error al crear una nueva carpeta
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=No se ha podido crear la carpeta
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=No se ha podido crear la carpeta.\n\nEl sistema no puede encontrar la ruta de acceso especificada.
+FileChooser.renameErrorTitle.textAndMnemonic=Error al cambiar el nombre del archivo o carpeta
+FileChooser.renameError.textAndMnemonic=No se puede cambiar el nombre de {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=No se puede cambiar el nombre de {0}: ya existe un archivo con el nombre especificado. Especifique otro nombre de archivo.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Todos los Archivos
+FileChooser.cancelButton.textAndMnemonic=&Cancelar
+FileChooser.saveButton.textAndMnemonic=&Guardar
+FileChooser.openButton.textAndMnemonic=A&brir
+FileChooser.saveDialogTitle.textAndMnemonic=Guardar
+FileChooser.openDialogTitle.textAndMnemonic=Abrir
+FileChooser.updateButton.textAndMnemonic=Act&ualizar
+FileChooser.helpButton.textAndMnemonic=A&yuda
+FileChooser.directoryOpenButton.textAndMnemonic=&Abrir
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Nueva Carpeta
+FileChooser.win32.newFolder.subsequent=Nueva Carpeta ({0})
+FileChooser.other.newFolder=Nueva Carpeta
+FileChooser.other.newFolder.subsequent=Nueva Carpeta.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Cuadro de di\u00E1logo para abortar el selector de archivos
+FileChooser.saveButtonToolTip.textAndMnemonic=Guardar archivo seleccionado
+FileChooser.openButtonToolTip.textAndMnemonic=Abrir archivo seleccionado
+FileChooser.updateButtonToolTip.textAndMnemonic=Actualizar lista de directorios
+FileChooser.helpButtonToolTip.textAndMnemonic=Ayuda del Selector de Archivos
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Abrir directorio seleccionado
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Presentaci\u00F3n Preliminar
+ColorChooser.ok.textAndMnemonic=Aceptar
+ColorChooser.cancel.textAndMnemonic=Cancelar
+ColorChooser.reset.textAndMnemonic=&Restablecer
+ColorChooser.sample.textAndMnemonic=Texto de Ejemplo  Texto de Ejemplo
+ColorChooser.swatches.textAndMnemonic=Mue&stras
+ColorChooser.swatchesRecent.textAndMnemonic=Reciente:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Matiz
+ColorChooser.hsvSaturation.textAndMnemonic=Saturaci\u00F3n
+ColorChooser.hsvValue.textAndMnemonic=Valor
+ColorChooser.hsvTransparency.textAndMnemonic=Transparencia
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Matiz
+ColorChooser.hslSaturation.textAndMnemonic=Saturaci\u00F3n
+ColorChooser.hslLightness.textAndMnemonic=Iluminaci\u00F3n
+ColorChooser.hslTransparency.textAndMnemonic=Transparencia
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=Ro&jo
+ColorChooser.rgbGreen.textAndMnemonic=&Verde
+ColorChooser.rgbBlue.textAndMnemonic=A&zul
+ColorChooser.rgbAlpha.textAndMnemonic=Alfa
+ColorChooser.rgbHexCode.textAndMnemonic=C\u00F3digo de Color(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Cian
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Amarillo
+ColorChooser.cmykBlack.textAndMnemonic=Negro
+ColorChooser.cmykAlpha.textAndMnemonic=Alfa
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=S\u00ED(&S)
+OptionPane.noButton.textAndMnemonic=&No
+OptionPane.okButton.textAndMnemonic=Aceptar(&O)
+OptionPane.cancelButton.textAndMnemonic=&Cancelar
+OptionPane.title.textAndMnemonic=Seleccionar una Opci\u00F3n
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Entrada
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Mensaje
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Impresi\u00F3n
+PrintingDialog.titleAborting.textAndMnemonic=Impresi\u00F3n (Abortando)
+
+PrintingDialog.contentInitial.textAndMnemonic=Impresi\u00F3n en curso...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=P\u00E1gina impresa {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=Abortando la impresi\u00F3n...
+
+PrintingDialog.abortButton.textAndMnemonic=&Abortar
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Abortar Impresi\u00F3n
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Minimizar
+InternalFrame.maxButtonToolTip=Maximizar
+InternalFrame.restoreButtonToolTip=Restaurar
+InternalFrame.closeButtonToolTip=Cerrar
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Restaurar
+InternalFrameTitlePane.moveButton.textAndMnemonic=Mover
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Tama\u00F1o
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Minimizar
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Maximizar
+InternalFrameTitlePane.closeButton.textAndMnemonic=Cerrar
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Enviar Consulta
+FormView.resetButton.textAndMnemonic=Restablecer
+FormView.browseFileButton.textAndMnemonic=Examinar...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=cambio de estilo
+AbstractDocument.addition.textAndMnemonic=agregaci\u00F3n
+AbstractDocument.deletion.textAndMnemonic=supresi\u00F3n
+AbstractDocument.undo.textAndMnemonic=Deshacer
+AbstractDocument.redo.textAndMnemonic=Rehacer
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=hacer clic
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=Deshacer
+AbstractUndoableEdit.redo.textAndMnemonic=Rehacer
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Progreso...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=bot\u00F3n izquierdo
+SplitPane.rightButton.textAndMnemonic=bot\u00F3n derecho
+# Used for Isindex
+IsindexView.prompt=En este \u00EDndice se pueden efectuar b\u00FAsquedas. Escriba las palabras clave de b\u00FAsqueda:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Convertir en Icono
+InternalFrameTitlePane.maximizeButtonAccessibleName=Maximizar
+InternalFrameTitlePane.closeButtonAccessibleName=Cerrar
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Fichier g\u00E9n\u00E9rique
-FileChooser.directoryDescriptionText=R\u00E9pertoire
-FileChooser.newFolderErrorText=Erreur lors de la cr\u00E9ation du dossier
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=Impossible de cr\u00E9er le dossier
-FileChooser.newFolderParentDoesntExistText=Impossible de cr\u00E9er le dossier.\n\nLe syst\u00E8me ne parvient pas \u00E0 trouver le chemin indiqu\u00E9.
-FileChooser.renameErrorTitleText=Erreur lors du changement de nom du fichier ou du dossier
-FileChooser.renameErrorText=Impossible de renommer {0}
-FileChooser.renameErrorFileExistsText=Impossible de renommer {0} : il existe d\u00E9j\u00E0 un fichier portant le nom indiqu\u00E9. Indiquez-en un autre.
-FileChooser.acceptAllFileFilterText=Tous les fichiers
-FileChooser.cancelButtonText=Annuler
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=Enregistrer
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=Ouvrir
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=Enregistrer
-FileChooser.openDialogTitleText=Ouvrir
-FileChooser.updateButtonText=Mettre \u00E0 jour
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=Aide
-FileChooser.helpButtonMnemonic=65
-FileChooser.directoryOpenButtonText=Ouvrir
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Nouveau dossier
-FileChooser.win32.newFolder.subsequent=Nouveau dossier ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Ferme la bo\u00EEte de dialogue du s\u00E9lecteur de fichiers
-FileChooser.saveButtonToolTipText=Enregistre le fichier s\u00E9lectionn\u00E9
-FileChooser.openButtonToolTipText=Ouvre le fichier s\u00E9lectionn\u00E9
-FileChooser.updateButtonToolTipText=Met \u00E0 jour la liste des r\u00E9pertoires
-FileChooser.helpButtonToolTipText=Aide du s\u00E9lecteur de fichiers
-FileChooser.directoryOpenButtonToolTipText=Ouvre le r\u00E9pertoire s\u00E9lectionn\u00E9
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Aper\u00E7u
-ColorChooser.okText=OK
-ColorChooser.cancelText=Annuler
-ColorChooser.resetText=R\u00E9initialiser
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=Echantillon de texte  Echantillon de texte
-ColorChooser.swatchesNameText=Echantillons
-ColorChooser.swatchesMnemonic=69
-ColorChooser.swatchesRecentText=Dernier :
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=TSV
-ColorChooser.hsvMnemonic=84
-ColorChooser.hsvHueText=Teinte
-ColorChooser.hsvSaturationText=Saturation
-ColorChooser.hsvValueText=Valeur
-ColorChooser.hsvTransparencyText=Transparence
-ColorChooser.hslNameText=TSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Teinte
-ColorChooser.hslSaturationText=Saturation
-ColorChooser.hslLightnessText=Lumi\u00E8re
-ColorChooser.hslTransparencyText=Transparence
-ColorChooser.rgbNameText=RVB
-ColorChooser.rgbMnemonic=86
-ColorChooser.rgbRedText=Rouge
-ColorChooser.rgbRedMnemonic=79
-ColorChooser.rgbGreenText=Vert
-ColorChooser.rgbGreenMnemonic=86
-ColorChooser.rgbBlueText=Bleu
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alpha
-ColorChooser.rgbHexCodeText=Code couleur
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Cyan
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Jaune
-ColorChooser.cmykBlackText=Noir
-ColorChooser.cmykAlphaText=Alpha
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=Oui
-OptionPane.yesButtonMnemonic=79
-OptionPane.noButtonText=Non
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Annuler
-OptionPane.cancelButtonMnemonic=A
-OptionPane.titleText=S\u00E9lectionner une option
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Entr\u00E9e
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Message
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Impression
-PrintingDialog.titleAbortingText=Impression (abandon)
-
-PrintingDialog.contentInitialText=Impression en cours...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=Page {0} imprim\u00E9e...
-
-PrintingDialog.contentAbortingText=Abandon de l'impression...
-
-PrintingDialog.abortButtonText=Abandonner
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Abandonner l'impression
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=R\u00E9duire
-InternalFrame.maxButtonToolTip=Agrandir
-InternalFrame.restoreButtonToolTip=Restaurer
-InternalFrame.closeButtonToolTip=Fermer
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Restaurer
-InternalFrameTitlePane.moveButtonText=D\u00E9placer
-InternalFrameTitlePane.sizeButtonText=Taille
-InternalFrameTitlePane.minimizeButtonText=R\u00E9duire
-InternalFrameTitlePane.maximizeButtonText=Agrandir
-InternalFrameTitlePane.closeButtonText=Fermer
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Soumettre la requ\u00EAte
-FormView.resetButtonText=R\u00E9initialiser
-FormView.browseFileButtonText=Parcourir...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=modification de style
-AbstractDocument.additionText=ajout
-AbstractDocument.deletionText=suppression
-AbstractDocument.undoText=Annuler
-AbstractDocument.redoText=R\u00E9tablir
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=cliquer
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=Annuler
-AbstractUndoableEdit.redoText=R\u00E9tablir
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Progression...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=bouton gauche
-SplitPane.rightButtonText=bouton droit
-# Used for Isindex
-IsindexView.prompt=Ceci est un index de recherche. Tapez des mots-cl\u00E9s pour la recherche :
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=R\u00E9duire
-InternalFrameTitlePane.maximizeButtonAccessibleName=Agrandir
-InternalFrameTitlePane.closeButtonAccessibleName=Fermer
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Fichier g\u00E9n\u00E9rique
+FileChooser.directoryDescription.textAndMnemonic=R\u00E9pertoire
+FileChooser.newFolderError.textAndMnemonic=Erreur lors de la cr\u00E9ation du dossier
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Impossible de cr\u00E9er le dossier
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=Impossible de cr\u00E9er le dossier.\n\nLe syst\u00E8me ne parvient pas \u00E0 trouver le chemin indiqu\u00E9.
+FileChooser.renameErrorTitle.textAndMnemonic=Erreur lors du changement de nom du fichier ou du dossier
+FileChooser.renameError.textAndMnemonic=Impossible de renommer {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=Impossible de renommer {0} : il existe d\u00E9j\u00E0 un fichier portant le nom indiqu\u00E9. Indiquez-en un autre.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Tous les fichiers
+FileChooser.cancelButton.textAndMnemonic=&Annuler
+FileChooser.saveButton.textAndMnemonic=Enregi&strer
+FileChooser.openButton.textAndMnemonic=&Ouvrir
+FileChooser.saveDialogTitle.textAndMnemonic=Enregistrer
+FileChooser.openDialogTitle.textAndMnemonic=Ouvrir
+FileChooser.updateButton.textAndMnemonic=Mettre \u00E0 jour(&U)
+FileChooser.helpButton.textAndMnemonic=&Aide
+FileChooser.directoryOpenButton.textAndMnemonic=&Ouvrir
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Nouveau dossier
+FileChooser.win32.newFolder.subsequent=Nouveau dossier ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Ferme la bo\u00EEte de dialogue du s\u00E9lecteur de fichiers
+FileChooser.saveButtonToolTip.textAndMnemonic=Enregistre le fichier s\u00E9lectionn\u00E9
+FileChooser.openButtonToolTip.textAndMnemonic=Ouvre le fichier s\u00E9lectionn\u00E9
+FileChooser.updateButtonToolTip.textAndMnemonic=Met \u00E0 jour la liste des r\u00E9pertoires
+FileChooser.helpButtonToolTip.textAndMnemonic=Aide du s\u00E9lecteur de fichiers
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Ouvre le r\u00E9pertoire s\u00E9lectionn\u00E9
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Aper\u00E7u
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Annuler
+ColorChooser.reset.textAndMnemonic=R\u00E9initialiser(&R)
+ColorChooser.sample.textAndMnemonic=Echantillon de texte  Echantillon de texte
+ColorChooser.swatches.textAndMnemonic=&Echantillons
+ColorChooser.swatchesRecent.textAndMnemonic=Dernier :
+ColorChooser.hsv.textAndMnemonic=&TSV
+ColorChooser.hsvHue.textAndMnemonic=Teinte
+ColorChooser.hsvSaturation.textAndMnemonic=Saturation
+ColorChooser.hsvValue.textAndMnemonic=Valeur
+ColorChooser.hsvTransparency.textAndMnemonic=Transparence
+ColorChooser.hsl.textAndMnemonic=TS&L
+ColorChooser.hslHue.textAndMnemonic=Teinte
+ColorChooser.hslSaturation.textAndMnemonic=Saturation
+ColorChooser.hslLightness.textAndMnemonic=Lumi\u00E8re
+ColorChooser.hslTransparency.textAndMnemonic=Transparence
+ColorChooser.rgb.textAndMnemonic=R&VB
+ColorChooser.rgbRed.textAndMnemonic=R&ouge
+ColorChooser.rgbGreen.textAndMnemonic=&Vert
+ColorChooser.rgbBlue.textAndMnemonic=&Bleu
+ColorChooser.rgbAlpha.textAndMnemonic=Alpha
+ColorChooser.rgbHexCode.textAndMnemonic=&Code couleur
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Cyan
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Jaune
+ColorChooser.cmykBlack.textAndMnemonic=Noir
+ColorChooser.cmykAlpha.textAndMnemonic=Alpha
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=&Oui
+OptionPane.noButton.textAndMnemonic=&Non
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=&Annuler
+OptionPane.title.textAndMnemonic=S\u00E9lectionner une option
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Entr\u00E9e
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Message
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Impression
+PrintingDialog.titleAborting.textAndMnemonic=Impression (abandon)
+
+PrintingDialog.contentInitial.textAndMnemonic=Impression en cours...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=Page {0} imprim\u00E9e...
+
+PrintingDialog.contentAborting.textAndMnemonic=Abandon de l'impression...
+
+PrintingDialog.abortButton.textAndMnemonic=&Abandonner
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Abandonner l'impression
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=R\u00E9duire
+InternalFrame.maxButtonToolTip=Agrandir
+InternalFrame.restoreButtonToolTip=Restaurer
+InternalFrame.closeButtonToolTip=Fermer
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Restaurer
+InternalFrameTitlePane.moveButton.textAndMnemonic=D\u00E9placer
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Taille
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=R\u00E9duire
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Agrandir
+InternalFrameTitlePane.closeButton.textAndMnemonic=Fermer
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Soumettre la requ\u00EAte
+FormView.resetButton.textAndMnemonic=R\u00E9initialiser
+FormView.browseFileButton.textAndMnemonic=Parcourir...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=modification de style
+AbstractDocument.addition.textAndMnemonic=ajout
+AbstractDocument.deletion.textAndMnemonic=suppression
+AbstractDocument.undo.textAndMnemonic=Annuler
+AbstractDocument.redo.textAndMnemonic=R\u00E9tablir
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=cliquer
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=Annuler
+AbstractUndoableEdit.redo.textAndMnemonic=R\u00E9tablir
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Progression...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=bouton gauche
+SplitPane.rightButton.textAndMnemonic=bouton droit
+# Used for Isindex
+IsindexView.prompt=Ceci est un index de recherche. Tapez des mots-cl\u00E9s pour la recherche :
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=R\u00E9duire
+InternalFrameTitlePane.maximizeButtonAccessibleName=Agrandir
+InternalFrameTitlePane.closeButtonAccessibleName=Fermer
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_it.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_it.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=File generico
-FileChooser.directoryDescriptionText=Directory
-FileChooser.newFolderErrorText=Errore durante la creazione della nuova cartella
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=Impossibile creare la cartella
-FileChooser.newFolderParentDoesntExistText=Impossibile creare la cartella.\n\nIl sistema non \u00E8 in grado di trovare il percorso specificato.
-FileChooser.renameErrorTitleText=Errore durante la ridenominazione del file o della cartella
-FileChooser.renameErrorText=Impossibile rinominare {0}
-FileChooser.renameErrorFileExistsText=Impossibile rinominare {0}: esiste gi\u00E0 un file con il nome specificato. Specificare un altro nome.
-FileChooser.acceptAllFileFilterText=Tutti i file
-FileChooser.cancelButtonText=Annulla
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=Salva
-FileChooser.saveButtonMnemonic=86
-FileChooser.openButtonText=Apri
-FileChooser.openButtonMnemonic=80
-FileChooser.saveDialogTitleText=Salva
-FileChooser.openDialogTitleText=Apri
-FileChooser.updateButtonText=Aggiorna
-FileChooser.updateButtonMnemonic=71
-FileChooser.helpButtonText=?(H)
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=Apri
-FileChooser.directoryOpenButtonMnemonic=65
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Nuova cartella
-FileChooser.win32.newFolder.subsequent=Nuova cartella ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Chiude la finestra di dialogo di selezione file
-FileChooser.saveButtonToolTipText=Salva il file selezionato
-FileChooser.openButtonToolTipText=Apre il file selezionato
-FileChooser.updateButtonToolTipText=Aggiorna la lista directory
-FileChooser.helpButtonToolTipText=Guida FileChooser
-FileChooser.directoryOpenButtonToolTipText=Apre la directory selezionata
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Anteprima
-ColorChooser.okText=OK
-ColorChooser.cancelText=Annulla
-ColorChooser.resetText=Reimposta
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=Testo di prova          Testo di prova
-ColorChooser.swatchesNameText=Colori campione
-ColorChooser.swatchesMnemonic=80
-ColorChooser.swatchesRecentText=Recenti:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Tonalit\u00E0
-ColorChooser.hsvSaturationText=Saturazione
-ColorChooser.hsvValueText=Valore
-ColorChooser.hsvTransparencyText=Trasparenza
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Tonalit\u00E0
-ColorChooser.hslSaturationText=Saturazione
-ColorChooser.hslLightnessText=Luminosit\u00E0
-ColorChooser.hslTransparencyText=Trasparenza
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=Rosso
-ColorChooser.rgbRedMnemonic=83
-ColorChooser.rgbGreenText=Verde
-ColorChooser.rgbGreenMnemonic=68
-ColorChooser.rgbBlueText=Blu
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alfa
-ColorChooser.rgbHexCodeText=Codice colori
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Ciano
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Giallo
-ColorChooser.cmykBlackText=Nero
-ColorChooser.cmykAlphaText=Alfa
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=S\u00EC
-OptionPane.yesButtonMnemonic=83
-OptionPane.noButtonText=No
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Annulla
-OptionPane.cancelButtonMnemonic=A
-OptionPane.titleText=Selezionare una opzione
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Input
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Messaggio
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Stampa in corso
-PrintingDialog.titleAbortingText=Stampa in corso (operazione interrotta)
-
-PrintingDialog.contentInitialText=Stampa in corso...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=Pagina stampata {0}...
-
-PrintingDialog.contentAbortingText=Interruzione della stampa...
-
-PrintingDialog.abortButtonText=Interrompi
-PrintingDialog.abortButtonMnemonic=78
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Interrompi la stampa
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Riduci a icona
-InternalFrame.maxButtonToolTip=Ingrandisci
-InternalFrame.restoreButtonToolTip=Ripristina
-InternalFrame.closeButtonToolTip=Chiudi
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Ripristina
-InternalFrameTitlePane.moveButtonText=Sposta
-InternalFrameTitlePane.sizeButtonText=Dimensioni
-InternalFrameTitlePane.minimizeButtonText=Riduci a icona
-InternalFrameTitlePane.maximizeButtonText=Ingrandisci
-InternalFrameTitlePane.closeButtonText=Chiudi
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Sottometti query
-FormView.resetButtonText=Reimposta
-FormView.browseFileButtonText=Sfoglia...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=modifica di stile
-AbstractDocument.additionText=aggiunta
-AbstractDocument.deletionText=eliminazione
-AbstractDocument.undoText=Annulla
-AbstractDocument.redoText=Ripeti
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=fare clic
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=Annulla
-AbstractUndoableEdit.redoText=Ripeti
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Avanzamento...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=tasto sinistro
-SplitPane.rightButtonText=tasto destro
-# Used for Isindex
-IsindexView.prompt=Questo \u00E8 un indice di ricerca. Immettere le parole chiave:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Riduci a icona
-InternalFrameTitlePane.maximizeButtonAccessibleName=Ingrandisci
-InternalFrameTitlePane.closeButtonAccessibleName=Chiudi
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=File generico
+FileChooser.directoryDescription.textAndMnemonic=Directory
+FileChooser.newFolderError.textAndMnemonic=Errore durante la creazione della nuova cartella
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Impossibile creare la cartella
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=Impossibile creare la cartella.\n\nIl sistema non \u00E8 in grado di trovare il percorso specificato.
+FileChooser.renameErrorTitle.textAndMnemonic=Errore durante la ridenominazione del file o della cartella
+FileChooser.renameError.textAndMnemonic=Impossibile rinominare {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=Impossibile rinominare {0}: esiste gi\u00E0 un file con il nome specificato. Specificare un altro nome.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Tutti i file
+FileChooser.cancelButton.textAndMnemonic=&Annulla
+FileChooser.saveButton.textAndMnemonic=Sal&va
+FileChooser.openButton.textAndMnemonic=A&pri
+FileChooser.saveDialogTitle.textAndMnemonic=Salva
+FileChooser.openDialogTitle.textAndMnemonic=Apri
+FileChooser.updateButton.textAndMnemonic=A&ggiorna
+FileChooser.helpButton.textAndMnemonic=?(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=&Apri
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Nuova cartella
+FileChooser.win32.newFolder.subsequent=Nuova cartella ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Chiude la finestra di dialogo di selezione file
+FileChooser.saveButtonToolTip.textAndMnemonic=Salva il file selezionato
+FileChooser.openButtonToolTip.textAndMnemonic=Apre il file selezionato
+FileChooser.updateButtonToolTip.textAndMnemonic=Aggiorna la lista directory
+FileChooser.helpButtonToolTip.textAndMnemonic=Guida FileChooser
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Apre la directory selezionata
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Anteprima
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Annulla
+ColorChooser.reset.textAndMnemonic=&Reimposta
+ColorChooser.sample.textAndMnemonic=Testo di prova          Testo di prova
+ColorChooser.swatches.textAndMnemonic=Colori cam&pione
+ColorChooser.swatchesRecent.textAndMnemonic=Recenti:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Tonalit\u00E0
+ColorChooser.hsvSaturation.textAndMnemonic=Saturazione
+ColorChooser.hsvValue.textAndMnemonic=Valore
+ColorChooser.hsvTransparency.textAndMnemonic=Trasparenza
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Tonalit\u00E0
+ColorChooser.hslSaturation.textAndMnemonic=Saturazione
+ColorChooser.hslLightness.textAndMnemonic=Luminosit\u00E0
+ColorChooser.hslTransparency.textAndMnemonic=Trasparenza
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=Ro&sso
+ColorChooser.rgbGreen.textAndMnemonic=Ver&de
+ColorChooser.rgbBlue.textAndMnemonic=&Blu
+ColorChooser.rgbAlpha.textAndMnemonic=Alfa
+ColorChooser.rgbHexCode.textAndMnemonic=&Codice colori
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Ciano
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Giallo
+ColorChooser.cmykBlack.textAndMnemonic=Nero
+ColorChooser.cmykAlpha.textAndMnemonic=Alfa
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=S\u00EC(&S)
+OptionPane.noButton.textAndMnemonic=&No
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=&Annulla
+OptionPane.title.textAndMnemonic=Selezionare una opzione
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Input
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Messaggio
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Stampa in corso
+PrintingDialog.titleAborting.textAndMnemonic=Stampa in corso (operazione interrotta)
+
+PrintingDialog.contentInitial.textAndMnemonic=Stampa in corso...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=Pagina stampata {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=Interruzione della stampa...
+
+PrintingDialog.abortButton.textAndMnemonic=I&nterrompi
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Interrompi la stampa
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Riduci a icona
+InternalFrame.maxButtonToolTip=Ingrandisci
+InternalFrame.restoreButtonToolTip=Ripristina
+InternalFrame.closeButtonToolTip=Chiudi
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Ripristina
+InternalFrameTitlePane.moveButton.textAndMnemonic=Sposta
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Dimensioni
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Riduci a icona
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Ingrandisci
+InternalFrameTitlePane.closeButton.textAndMnemonic=Chiudi
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Sottometti query
+FormView.resetButton.textAndMnemonic=Reimposta
+FormView.browseFileButton.textAndMnemonic=Sfoglia...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=modifica di stile
+AbstractDocument.addition.textAndMnemonic=aggiunta
+AbstractDocument.deletion.textAndMnemonic=eliminazione
+AbstractDocument.undo.textAndMnemonic=Annulla
+AbstractDocument.redo.textAndMnemonic=Ripeti
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=fare clic
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=Annulla
+AbstractUndoableEdit.redo.textAndMnemonic=Ripeti
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Avanzamento...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=tasto sinistro
+SplitPane.rightButton.textAndMnemonic=tasto destro
+# Used for Isindex
+IsindexView.prompt=Questo \u00E8 un indice di ricerca. Immettere le parole chiave:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Riduci a icona
+InternalFrameTitlePane.maximizeButtonAccessibleName=Ingrandisci
+InternalFrameTitlePane.closeButtonAccessibleName=Chiudi
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=\u6C4E\u7528\u30D5\u30A1\u30A4\u30EB
-FileChooser.directoryDescriptionText=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
-FileChooser.newFolderErrorText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210\u30A8\u30E9\u30FC
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=\u30D5\u30A9\u30EB\u30C0\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093
-FileChooser.newFolderParentDoesntExistText=\u30D5\u30A9\u30EB\u30C0\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3002\n\n\u6307\u5B9A\u3057\u305F\u30D1\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
-FileChooser.renameErrorTitleText=\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30D5\u30A9\u30EB\u30C0\u306E\u540D\u524D\u5909\u66F4\u30A8\u30E9\u30FC
-FileChooser.renameErrorText={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093
-FileChooser.renameErrorFileExistsText={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093: \u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30D5\u30A1\u30A4\u30EB\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u5225\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
-FileChooser.acceptAllFileFilterText=\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\u4FDD\u5B58
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\u958B\u304F
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u4FDD\u5B58
-FileChooser.openDialogTitleText=\u958B\u304F
-FileChooser.updateButtonText=\u66F4\u65B0(U)
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=\u30D8\u30EB\u30D7(H)
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\u958B\u304F(O)
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.win32.newFolder.subsequent=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0({0})
-FileChooser.other.newFolder=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.other.newFolder.subsequent=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=\u30D5\u30A1\u30A4\u30EB\u30FB\u30C1\u30E5\u30FC\u30B6\u30FB\u30C0\u30A4\u30A2\u30ED\u30B0\u3092\u7D42\u4E86\u3057\u307E\u3059
-FileChooser.saveButtonToolTipText=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3057\u307E\u3059
-FileChooser.openButtonToolTipText=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u307E\u3059
-FileChooser.updateButtonToolTipText=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30EA\u30B9\u30C8\u3092\u66F4\u65B0\u3057\u307E\u3059
-FileChooser.helpButtonToolTipText=FileChooser\u306E\u30D8\u30EB\u30D7\u3067\u3059
-FileChooser.directoryOpenButtonToolTipText=\u9078\u629E\u3057\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u958B\u304D\u307E\u3059
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=\u30D7\u30EC\u30D3\u30E5\u30FC
-ColorChooser.okText=OK
-ColorChooser.cancelText=\u53D6\u6D88
-ColorChooser.resetText=\u30EA\u30BB\u30C3\u30C8(R)
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=\u30B5\u30F3\u30D7\u30EB\u30FB\u30C6\u30AD\u30B9\u30C8  \u30B5\u30F3\u30D7\u30EB\u30FB\u30C6\u30AD\u30B9\u30C8
-ColorChooser.swatchesNameText=\u30B5\u30F3\u30D7\u30EB(S)
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=\u6700\u65B0:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=\u8272\u76F8
-ColorChooser.hsvSaturationText=\u5F69\u5EA6
-ColorChooser.hsvValueText=\u5024
-ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=\u8272\u76F8
-ColorChooser.hslSaturationText=\u5F69\u5EA6
-ColorChooser.hslLightnessText=\u660E\u5EA6
-ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=\u8D64
-ColorChooser.rgbRedMnemonic=68
-ColorChooser.rgbGreenText=\u7DD1
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=\u9752
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=\u30A2\u30EB\u30D5\u30A1
-ColorChooser.rgbHexCodeText=\u8272\u30B3\u30FC\u30C9(C)
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=\u30B7\u30A2\u30F3
-ColorChooser.cmykMagentaText=\u30DE\u30BC\u30F3\u30BF
-ColorChooser.cmykYellowText=\u9EC4
-ColorChooser.cmykBlackText=\u9ED2
-ColorChooser.cmykAlphaText=\u30A2\u30EB\u30D5\u30A1
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=\u306F\u3044(Y)
-OptionPane.yesButtonMnemonic=89
-OptionPane.noButtonText=\u3044\u3044\u3048(N)
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=\u53D6\u6D88
-OptionPane.cancelButtonMnemonic=0
-OptionPane.titleText=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u9078\u629E
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=\u5165\u529B
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=\u30E1\u30C3\u30BB\u30FC\u30B8
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=\u5370\u5237\u3057\u3066\u3044\u307E\u3059
-PrintingDialog.titleAbortingText=\u5370\u5237\u3092\u4E2D\u6B62\u3057\u3066\u3044\u307E\u3059
-
-PrintingDialog.contentInitialText=\u5370\u5237\u4E2D...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=\u30DA\u30FC\u30B8{0}\u3092\u5370\u5237\u3057\u307E\u3057\u305F...
-
-PrintingDialog.contentAbortingText=\u5370\u5237\u3092\u4E2D\u6B62\u3057\u3066\u3044\u307E\u3059...
-
-PrintingDialog.abortButtonText=\u4E2D\u6B62(A)
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=\u5370\u5237\u306E\u4E2D\u6B62
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
-InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
-InternalFrame.restoreButtonToolTip=\u5FA9\u5143
-InternalFrame.closeButtonToolTip=\u9589\u3058\u308B
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=\u5FA9\u5143
-InternalFrameTitlePane.moveButtonText=\u79FB\u52D5
-InternalFrameTitlePane.sizeButtonText=\u30B5\u30A4\u30BA
-InternalFrameTitlePane.minimizeButtonText=\u6700\u5C0F\u5316
-InternalFrameTitlePane.maximizeButtonText=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonText=\u9589\u3058\u308B
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=\u554F\u5408\u305B\u306E\u5B9F\u884C
-FormView.resetButtonText=\u30EA\u30BB\u30C3\u30C8
-FormView.browseFileButtonText=\u53C2\u7167...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=\u30B9\u30BF\u30A4\u30EB\u5909\u66F4
-AbstractDocument.additionText=\u8FFD\u52A0
-AbstractDocument.deletionText=\u524A\u9664
-AbstractDocument.undoText=\u5143\u306B\u623B\u3059
-AbstractDocument.redoText=\u3084\u308A\u76F4\u3057
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=\u30AF\u30EA\u30C3\u30AF
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=\u5143\u306B\u623B\u3059
-AbstractUndoableEdit.redoText=\u3084\u308A\u76F4\u3057
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=\u30C8\u30B0\u30EB\u30FB\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=\u9032\u884C\u4E2D...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=\u5DE6\u30DC\u30BF\u30F3
-SplitPane.rightButtonText=\u53F3\u30DC\u30BF\u30F3
-# Used for Isindex
-IsindexView.prompt=\u691C\u7D22\u7528\u306E\u7D22\u5F15\u3067\u3059\u3002\u691C\u7D22\u3059\u308B\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=\u30A2\u30A4\u30B3\u30F3\u5316
-InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonAccessibleName=\u9589\u3058\u308B
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=\u6C4E\u7528\u30D5\u30A1\u30A4\u30EB
+FileChooser.directoryDescription.textAndMnemonic=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
+FileChooser.newFolderError.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210\u30A8\u30E9\u30FC
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3002\n\n\u6307\u5B9A\u3057\u305F\u30D1\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+FileChooser.renameErrorTitle.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30D5\u30A9\u30EB\u30C0\u306E\u540D\u524D\u5909\u66F4\u30A8\u30E9\u30FC
+FileChooser.renameError.textAndMnemonic={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093
+FileChooser.renameErrorFileExists.textAndMnemonic={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093: \u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30D5\u30A1\u30A4\u30EB\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u5225\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=\u4FDD\u5B58(&S)
+FileChooser.openButton.textAndMnemonic=\u958B\u304F(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\u4FDD\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u958B\u304F
+FileChooser.updateButton.textAndMnemonic=\u66F4\u65B0(&U)
+FileChooser.helpButton.textAndMnemonic=\u30D8\u30EB\u30D7(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=\u958B\u304F(&O)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.win32.newFolder.subsequent=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0({0})
+FileChooser.other.newFolder=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.other.newFolder.subsequent=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u30FB\u30C1\u30E5\u30FC\u30B6\u30FB\u30C0\u30A4\u30A2\u30ED\u30B0\u3092\u7D42\u4E86\u3057\u307E\u3059
+FileChooser.saveButtonToolTip.textAndMnemonic=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3057\u307E\u3059
+FileChooser.openButtonToolTip.textAndMnemonic=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u307E\u3059
+FileChooser.updateButtonToolTip.textAndMnemonic=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30EA\u30B9\u30C8\u3092\u66F4\u65B0\u3057\u307E\u3059
+FileChooser.helpButtonToolTip.textAndMnemonic=FileChooser\u306E\u30D8\u30EB\u30D7\u3067\u3059
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\u9078\u629E\u3057\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u958B\u304D\u307E\u3059
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=\u30D7\u30EC\u30D3\u30E5\u30FC
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=\u53D6\u6D88
+ColorChooser.reset.textAndMnemonic=\u30EA\u30BB\u30C3\u30C8(&R)
+ColorChooser.sample.textAndMnemonic=\u30B5\u30F3\u30D7\u30EB\u30FB\u30C6\u30AD\u30B9\u30C8  \u30B5\u30F3\u30D7\u30EB\u30FB\u30C6\u30AD\u30B9\u30C8
+ColorChooser.swatches.textAndMnemonic=\u30B5\u30F3\u30D7\u30EB(&S)
+ColorChooser.swatchesRecent.textAndMnemonic=\u6700\u65B0:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=\u8272\u76F8
+ColorChooser.hsvSaturation.textAndMnemonic=\u5F69\u5EA6
+ColorChooser.hsvValue.textAndMnemonic=\u5024
+ColorChooser.hsvTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=\u8272\u76F8
+ColorChooser.hslSaturation.textAndMnemonic=\u5F69\u5EA6
+ColorChooser.hslLightness.textAndMnemonic=\u660E\u5EA6
+ColorChooser.hslTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=\u8D64(&D)
+ColorChooser.rgbGreen.textAndMnemonic=\u7DD1(&N)
+ColorChooser.rgbBlue.textAndMnemonic=\u9752(&B)
+ColorChooser.rgbAlpha.textAndMnemonic=\u30A2\u30EB\u30D5\u30A1
+ColorChooser.rgbHexCode.textAndMnemonic=\u8272\u30B3\u30FC\u30C9(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=\u30B7\u30A2\u30F3
+ColorChooser.cmykMagenta.textAndMnemonic=\u30DE\u30BC\u30F3\u30BF
+ColorChooser.cmykYellow.textAndMnemonic=\u9EC4
+ColorChooser.cmykBlack.textAndMnemonic=\u9ED2
+ColorChooser.cmykAlpha.textAndMnemonic=\u30A2\u30EB\u30D5\u30A1
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=\u306F\u3044(&Y)
+OptionPane.noButton.textAndMnemonic=\u3044\u3044\u3048(&N)
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=\u53D6\u6D88
+OptionPane.title.textAndMnemonic=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u9078\u629E
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=\u5165\u529B
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=\u30E1\u30C3\u30BB\u30FC\u30B8
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=\u5370\u5237\u3057\u3066\u3044\u307E\u3059
+PrintingDialog.titleAborting.textAndMnemonic=\u5370\u5237\u3092\u4E2D\u6B62\u3057\u3066\u3044\u307E\u3059
+
+PrintingDialog.contentInitial.textAndMnemonic=\u5370\u5237\u4E2D...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=\u30DA\u30FC\u30B8{0}\u3092\u5370\u5237\u3057\u307E\u3057\u305F...
+
+PrintingDialog.contentAborting.textAndMnemonic=\u5370\u5237\u3092\u4E2D\u6B62\u3057\u3066\u3044\u307E\u3059...
+
+PrintingDialog.abortButton.textAndMnemonic=\u4E2D\u6B62(&A)
+PrintingDialog.abortButtonToolTip.textAndMnemonic=\u5370\u5237\u306E\u4E2D\u6B62
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
+InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
+InternalFrame.restoreButtonToolTip=\u5FA9\u5143
+InternalFrame.closeButtonToolTip=\u9589\u3058\u308B
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=\u5FA9\u5143
+InternalFrameTitlePane.moveButton.textAndMnemonic=\u79FB\u52D5
+InternalFrameTitlePane.sizeButton.textAndMnemonic=\u30B5\u30A4\u30BA
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=\u6700\u5C0F\u5316
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButton.textAndMnemonic=\u9589\u3058\u308B
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=\u554F\u5408\u305B\u306E\u5B9F\u884C
+FormView.resetButton.textAndMnemonic=\u30EA\u30BB\u30C3\u30C8
+FormView.browseFileButton.textAndMnemonic=\u53C2\u7167...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=\u30B9\u30BF\u30A4\u30EB\u5909\u66F4
+AbstractDocument.addition.textAndMnemonic=\u8FFD\u52A0
+AbstractDocument.deletion.textAndMnemonic=\u524A\u9664
+AbstractDocument.undo.textAndMnemonic=\u5143\u306B\u623B\u3059
+AbstractDocument.redo.textAndMnemonic=\u3084\u308A\u76F4\u3057
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=\u30AF\u30EA\u30C3\u30AF
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=\u5143\u306B\u623B\u3059
+AbstractUndoableEdit.redo.textAndMnemonic=\u3084\u308A\u76F4\u3057
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=\u30C8\u30B0\u30EB\u30FB\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=\u9032\u884C\u4E2D...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=\u5DE6\u30DC\u30BF\u30F3
+SplitPane.rightButton.textAndMnemonic=\u53F3\u30DC\u30BF\u30F3
+# Used for Isindex
+IsindexView.prompt=\u691C\u7D22\u7528\u306E\u7D22\u5F15\u3067\u3059\u3002\u691C\u7D22\u3059\u308B\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=\u30A2\u30A4\u30B3\u30F3\u5316
+InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButtonAccessibleName=\u9589\u3058\u308B
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=\uC77C\uBC18 \uD30C\uC77C
-FileChooser.directoryDescriptionText=\uB514\uB809\uD1A0\uB9AC
-FileChooser.newFolderErrorText=\uC0C8 \uD3F4\uB354\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=\uD3F4\uB354\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC74C
-FileChooser.newFolderParentDoesntExistText=\uD3F4\uB354\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.\n\n\uC2DC\uC2A4\uD15C\uC5D0\uC11C \uC9C0\uC815\uB41C \uACBD\uB85C\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-FileChooser.renameErrorTitleText=\uD30C\uC77C \uB610\uB294 \uD3F4\uB354 \uC774\uB984 \uBC14\uAFB8\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD
-FileChooser.renameErrorText={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-FileChooser.renameErrorFileExistsText={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC74C: \uC9C0\uC815\uD55C \uC774\uB984\uC744 \uC0AC\uC6A9\uD558\uB294 \uD30C\uC77C\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4. \uB2E4\uB978 \uD30C\uC77C \uC774\uB984\uC744 \uC9C0\uC815\uD558\uC2ED\uC2DC\uC624.
-FileChooser.acceptAllFileFilterText=\uBAA8\uB4E0 \uD30C\uC77C
-FileChooser.cancelButtonText=\uCDE8\uC18C
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\uC800\uC7A5
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\uC5F4\uAE30
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\uC800\uC7A5
-FileChooser.openDialogTitleText=\uC5F4\uAE30
-FileChooser.updateButtonText=\uAC31\uC2E0(U)
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=\uB3C4\uC6C0\uB9D0(H)
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\uC5F4\uAE30(O)
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=\uC0C8 \uD3F4\uB354
-FileChooser.win32.newFolder.subsequent=\uC0C8 \uD3F4\uB354({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=\uD30C\uC77C \uC120\uD0DD\uAE30 \uB300\uD654\uC0C1\uC790 \uC911\uB2E8
-FileChooser.saveButtonToolTipText=\uC120\uD0DD\uB41C \uD30C\uC77C \uC800\uC7A5
-FileChooser.openButtonToolTipText=\uC120\uD0DD\uB41C \uD30C\uC77C \uC5F4\uAE30
-FileChooser.updateButtonToolTipText=\uB514\uB809\uD1A0\uB9AC \uBAA9\uB85D \uAC31\uC2E0
-FileChooser.helpButtonToolTipText=FileChooser \uB3C4\uC6C0\uB9D0
-FileChooser.directoryOpenButtonToolTipText=\uC120\uD0DD\uB41C \uB514\uB809\uD1A0\uB9AC \uC5F4\uAE30
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=\uBBF8\uB9AC\uBCF4\uAE30
-ColorChooser.okText=\uD655\uC778
-ColorChooser.cancelText=\uCDE8\uC18C
-ColorChooser.resetText=\uC7AC\uC124\uC815(R)
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=\uC0D8\uD50C \uD14D\uC2A4\uD2B8  \uC0D8\uD50C \uD14D\uC2A4\uD2B8
-ColorChooser.swatchesNameText=\uACAC\uBCF8(S)
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=\uCD5C\uADFC \uBAA9\uB85D:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=\uC0C9\uC870
-ColorChooser.hsvSaturationText=\uCC44\uB3C4
-ColorChooser.hsvValueText=\uAC12
-ColorChooser.hsvTransparencyText=\uD22C\uBA85
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=\uC0C9\uC870
-ColorChooser.hslSaturationText=\uCC44\uB3C4
-ColorChooser.hslLightnessText=\uBC1D\uAE30
-ColorChooser.hslTransparencyText=\uD22C\uBA85
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=\uBE68\uAC04\uC0C9
-ColorChooser.rgbRedMnemonic=68
-ColorChooser.rgbGreenText=\uB179\uC0C9
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=\uD30C\uB780\uC0C9
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=\uC54C\uD30C
-ColorChooser.rgbHexCodeText=\uC0C9\uC0C1 \uCF54\uB4DC(C)
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=\uCCAD\uB85D\uC0C9
-ColorChooser.cmykMagentaText=\uC9C4\uD64D\uC0C9
-ColorChooser.cmykYellowText=\uB178\uB780\uC0C9
-ColorChooser.cmykBlackText=\uAC80\uC815\uC0C9
-ColorChooser.cmykAlphaText=\uC54C\uD30C
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=\uC608(Y)
-OptionPane.yesButtonMnemonic=89
-OptionPane.noButtonText=\uC544\uB2C8\uC624(N)
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=\uD655\uC778
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=\uCDE8\uC18C
-OptionPane.cancelButtonMnemonic=0
-OptionPane.titleText=\uC635\uC158 \uC120\uD0DD
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=\uC785\uB825
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=\uBA54\uC2DC\uC9C0
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=\uC778\uC1C4
-PrintingDialog.titleAbortingText=\uC778\uC1C4(\uC911\uB2E8 \uC911)
-
-PrintingDialog.contentInitialText=\uC778\uC1C4 \uC9C4\uD589 \uC911...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=\uC778\uC1C4\uB41C \uD398\uC774\uC9C0 {0}...
-
-PrintingDialog.contentAbortingText=\uC778\uC1C4 \uC911\uB2E8 \uC911...
-
-PrintingDialog.abortButtonText=\uC911\uB2E8(A)
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=\uC778\uC1C4 \uC911\uB2E8
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=\uCD5C\uC18C\uD654
-InternalFrame.maxButtonToolTip=\uCD5C\uB300\uD654
-InternalFrame.restoreButtonToolTip=\uBCF5\uC6D0
-InternalFrame.closeButtonToolTip=\uB2EB\uAE30
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=\uBCF5\uC6D0
-InternalFrameTitlePane.moveButtonText=\uC774\uB3D9
-InternalFrameTitlePane.sizeButtonText=\uD06C\uAE30
-InternalFrameTitlePane.minimizeButtonText=\uCD5C\uC18C\uD654
-InternalFrameTitlePane.maximizeButtonText=\uCD5C\uB300\uD654
-InternalFrameTitlePane.closeButtonText=\uB2EB\uAE30
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=\uC9C8\uC758 \uC81C\uCD9C
-FormView.resetButtonText=\uC7AC\uC124\uC815
-FormView.browseFileButtonText=\uCC3E\uC544\uBCF4\uAE30...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=\uC2A4\uD0C0\uC77C \uBCC0\uACBD
-AbstractDocument.additionText=\uCD94\uAC00
-AbstractDocument.deletionText=\uC0AD\uC81C
-AbstractDocument.undoText=\uC2E4\uD589 \uCDE8\uC18C
-AbstractDocument.redoText=\uC7AC\uC2E4\uD589
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=\uB204\uB974\uAE30
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=\uC2E4\uD589 \uCDE8\uC18C
-AbstractUndoableEdit.redoText=\uC7AC\uC2E4\uD589
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=\uC9C4\uD589...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=\uC67C\uCABD \uB2E8\uCD94
-SplitPane.rightButtonText=\uC624\uB978\uCABD \uB2E8\uCD94
-# Used for Isindex
-IsindexView.prompt=\uB2E4\uC74C\uC740 \uAC80\uC0C9 \uAC00\uB2A5\uD55C \uC778\uB371\uC2A4\uC785\uB2C8\uB2E4. \uAC80\uC0C9 \uD0A4\uC6CC\uB4DC \uC785\uB825:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=\uC544\uC774\uCF58\uD654
-InternalFrameTitlePane.maximizeButtonAccessibleName=\uCD5C\uB300\uD654
-InternalFrameTitlePane.closeButtonAccessibleName=\uB2EB\uAE30
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=\uC77C\uBC18 \uD30C\uC77C
+FileChooser.directoryDescription.textAndMnemonic=\uB514\uB809\uD1A0\uB9AC
+FileChooser.newFolderError.textAndMnemonic=\uC0C8 \uD3F4\uB354\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=\uD3F4\uB354\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC74C
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=\uD3F4\uB354\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.\n\n\uC2DC\uC2A4\uD15C\uC5D0\uC11C \uC9C0\uC815\uB41C \uACBD\uB85C\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+FileChooser.renameErrorTitle.textAndMnemonic=\uD30C\uC77C \uB610\uB294 \uD3F4\uB354 \uC774\uB984 \uBC14\uAFB8\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD
+FileChooser.renameError.textAndMnemonic={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+FileChooser.renameErrorFileExists.textAndMnemonic={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC74C: \uC9C0\uC815\uD55C \uC774\uB984\uC744 \uC0AC\uC6A9\uD558\uB294 \uD30C\uC77C\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4. \uB2E4\uB978 \uD30C\uC77C \uC774\uB984\uC744 \uC9C0\uC815\uD558\uC2ED\uC2DC\uC624.
+FileChooser.acceptAllFileFilter.textAndMnemonic=\uBAA8\uB4E0 \uD30C\uC77C
+FileChooser.cancelButton.textAndMnemonic=\uCDE8\uC18C(&C)
+FileChooser.saveButton.textAndMnemonic=\uC800\uC7A5(&S)
+FileChooser.openButton.textAndMnemonic=\uC5F4\uAE30(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\uC800\uC7A5
+FileChooser.openDialogTitle.textAndMnemonic=\uC5F4\uAE30
+FileChooser.updateButton.textAndMnemonic=\uAC31\uC2E0(&U)
+FileChooser.helpButton.textAndMnemonic=\uB3C4\uC6C0\uB9D0(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=\uC5F4\uAE30(&O)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=\uC0C8 \uD3F4\uB354
+FileChooser.win32.newFolder.subsequent=\uC0C8 \uD3F4\uB354({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=\uD30C\uC77C \uC120\uD0DD\uAE30 \uB300\uD654\uC0C1\uC790 \uC911\uB2E8
+FileChooser.saveButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uD30C\uC77C \uC800\uC7A5
+FileChooser.openButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uD30C\uC77C \uC5F4\uAE30
+FileChooser.updateButtonToolTip.textAndMnemonic=\uB514\uB809\uD1A0\uB9AC \uBAA9\uB85D \uAC31\uC2E0
+FileChooser.helpButtonToolTip.textAndMnemonic=FileChooser \uB3C4\uC6C0\uB9D0
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uB514\uB809\uD1A0\uB9AC \uC5F4\uAE30
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=\uBBF8\uB9AC\uBCF4\uAE30
+ColorChooser.ok.textAndMnemonic=\uD655\uC778
+ColorChooser.cancel.textAndMnemonic=\uCDE8\uC18C
+ColorChooser.reset.textAndMnemonic=\uC7AC\uC124\uC815(&R)
+ColorChooser.sample.textAndMnemonic=\uC0D8\uD50C \uD14D\uC2A4\uD2B8  \uC0D8\uD50C \uD14D\uC2A4\uD2B8
+ColorChooser.swatches.textAndMnemonic=\uACAC\uBCF8(&S)
+ColorChooser.swatchesRecent.textAndMnemonic=\uCD5C\uADFC \uBAA9\uB85D:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=\uC0C9\uC870
+ColorChooser.hsvSaturation.textAndMnemonic=\uCC44\uB3C4
+ColorChooser.hsvValue.textAndMnemonic=\uAC12
+ColorChooser.hsvTransparency.textAndMnemonic=\uD22C\uBA85
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=\uC0C9\uC870
+ColorChooser.hslSaturation.textAndMnemonic=\uCC44\uB3C4
+ColorChooser.hslLightness.textAndMnemonic=\uBC1D\uAE30
+ColorChooser.hslTransparency.textAndMnemonic=\uD22C\uBA85
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=\uBE68\uAC04\uC0C9(&D)
+ColorChooser.rgbGreen.textAndMnemonic=\uB179\uC0C9(&N)
+ColorChooser.rgbBlue.textAndMnemonic=\uD30C\uB780\uC0C9(&B)
+ColorChooser.rgbAlpha.textAndMnemonic=\uC54C\uD30C
+ColorChooser.rgbHexCode.textAndMnemonic=\uC0C9\uC0C1 \uCF54\uB4DC(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=\uCCAD\uB85D\uC0C9
+ColorChooser.cmykMagenta.textAndMnemonic=\uC9C4\uD64D\uC0C9
+ColorChooser.cmykYellow.textAndMnemonic=\uB178\uB780\uC0C9
+ColorChooser.cmykBlack.textAndMnemonic=\uAC80\uC815\uC0C9
+ColorChooser.cmykAlpha.textAndMnemonic=\uC54C\uD30C
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=\uC608(&Y)
+OptionPane.noButton.textAndMnemonic=\uC544\uB2C8\uC624(&N)
+OptionPane.okButton.textAndMnemonic=\uD655\uC778(&O)
+OptionPane.cancelButton.textAndMnemonic=\uCDE8\uC18C
+OptionPane.title.textAndMnemonic=\uC635\uC158 \uC120\uD0DD
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=\uC785\uB825
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=\uBA54\uC2DC\uC9C0
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=\uC778\uC1C4
+PrintingDialog.titleAborting.textAndMnemonic=\uC778\uC1C4(\uC911\uB2E8 \uC911)
+
+PrintingDialog.contentInitial.textAndMnemonic=\uC778\uC1C4 \uC9C4\uD589 \uC911...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=\uC778\uC1C4\uB41C \uD398\uC774\uC9C0 {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=\uC778\uC1C4 \uC911\uB2E8 \uC911...
+
+PrintingDialog.abortButton.textAndMnemonic=\uC911\uB2E8(&A)
+PrintingDialog.abortButtonToolTip.textAndMnemonic=\uC778\uC1C4 \uC911\uB2E8
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=\uCD5C\uC18C\uD654
+InternalFrame.maxButtonToolTip=\uCD5C\uB300\uD654
+InternalFrame.restoreButtonToolTip=\uBCF5\uC6D0
+InternalFrame.closeButtonToolTip=\uB2EB\uAE30
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=\uBCF5\uC6D0
+InternalFrameTitlePane.moveButton.textAndMnemonic=\uC774\uB3D9
+InternalFrameTitlePane.sizeButton.textAndMnemonic=\uD06C\uAE30
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=\uCD5C\uC18C\uD654
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=\uCD5C\uB300\uD654
+InternalFrameTitlePane.closeButton.textAndMnemonic=\uB2EB\uAE30
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=\uC9C8\uC758 \uC81C\uCD9C
+FormView.resetButton.textAndMnemonic=\uC7AC\uC124\uC815
+FormView.browseFileButton.textAndMnemonic=\uCC3E\uC544\uBCF4\uAE30...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=\uC2A4\uD0C0\uC77C \uBCC0\uACBD
+AbstractDocument.addition.textAndMnemonic=\uCD94\uAC00
+AbstractDocument.deletion.textAndMnemonic=\uC0AD\uC81C
+AbstractDocument.undo.textAndMnemonic=\uC2E4\uD589 \uCDE8\uC18C
+AbstractDocument.redo.textAndMnemonic=\uC7AC\uC2E4\uD589
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=\uB204\uB974\uAE30
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=\uC2E4\uD589 \uCDE8\uC18C
+AbstractUndoableEdit.redo.textAndMnemonic=\uC7AC\uC2E4\uD589
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=\uC9C4\uD589...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=\uC67C\uCABD \uB2E8\uCD94
+SplitPane.rightButton.textAndMnemonic=\uC624\uB978\uCABD \uB2E8\uCD94
+# Used for Isindex
+IsindexView.prompt=\uB2E4\uC74C\uC740 \uAC80\uC0C9 \uAC00\uB2A5\uD55C \uC778\uB371\uC2A4\uC785\uB2C8\uB2E4. \uAC80\uC0C9 \uD0A4\uC6CC\uB4DC \uC785\uB825:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=\uC544\uC774\uCF58\uD654
+InternalFrameTitlePane.maximizeButtonAccessibleName=\uCD5C\uB300\uD654
+InternalFrameTitlePane.closeButtonAccessibleName=\uB2EB\uAE30
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Arquivo Gen\u00E9rico
-FileChooser.directoryDescriptionText=Diret\u00F3rio
-FileChooser.newFolderErrorText=Erro ao criar nova pasta
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=N\u00E3o \u00E9 poss\u00EDvel criar a pasta
-FileChooser.newFolderParentDoesntExistText=N\u00E3o \u00E9 poss\u00EDvel criar a pasta.\n\nO sistema n\u00E3o pode localizar o caminho especificado.
-FileChooser.renameErrorTitleText=Erro ao Renomear o Arquivo ou a Pasta
-FileChooser.renameErrorText=N\u00E3o \u00E9 poss\u00EDvel renomear {0}
-FileChooser.renameErrorFileExistsText=N\u00E3o \u00E9 poss\u00EDvel renomear {0}: Um arquivo com o nome especificado j\u00E1 existe. Especifique outro nome de arquivo.
-FileChooser.acceptAllFileFilterText=Todos os Arquivos
-FileChooser.cancelButtonText=Cancelar
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=Salvar
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=Abrir
-FileChooser.openButtonMnemonic=66
-FileChooser.saveDialogTitleText=Salvar
-FileChooser.openDialogTitleText=Abrir
-FileChooser.updateButtonText=Atualizar
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=Ajuda
-FileChooser.helpButtonMnemonic=85
-FileChooser.directoryOpenButtonText=Abrir
-FileChooser.directoryOpenButtonMnemonic=66
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Nova Pasta
-FileChooser.win32.newFolder.subsequent=Nova Pasta ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Abortar caixa de di\u00E1logo do seletor de arquivos
-FileChooser.saveButtonToolTipText=Salvar arquivo selecionado
-FileChooser.openButtonToolTipText=Abrir arquivo selecionado
-FileChooser.updateButtonToolTipText=Atualizar lista de diret\u00F3rios
-FileChooser.helpButtonToolTipText=Ajuda do FileChooser
-FileChooser.directoryOpenButtonToolTipText=Abrir diret\u00F3rio selecionado
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Visualizar
-ColorChooser.okText=OK
-ColorChooser.cancelText=Cancelar
-ColorChooser.resetText=Redefinir
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=Texto de Amostra Texto de Amostra
-ColorChooser.swatchesNameText=Amostras
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=Recente:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Matiz
-ColorChooser.hsvSaturationText=Satura\u00E7\u00E3o
-ColorChooser.hsvValueText=Valor
-ColorChooser.hsvTransparencyText=Transpar\u00EAncia
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Matiz
-ColorChooser.hslSaturationText=Satura\u00E7\u00E3o
-ColorChooser.hslLightnessText=Clareza
-ColorChooser.hslTransparencyText=Transpar\u00EAncia
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=Vermelho
-ColorChooser.rgbRedMnemonic=86
-ColorChooser.rgbGreenText=Verde
-ColorChooser.rgbGreenMnemonic=86
-ColorChooser.rgbBlueText=Azul
-ColorChooser.rgbBlueMnemonic=65
-ColorChooser.rgbAlphaText=Alfa
-ColorChooser.rgbHexCodeText=C\u00F3digo da Cor
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Ciano
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Amarelo
-ColorChooser.cmykBlackText=Preto
-ColorChooser.cmykAlphaText=Alfa
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=Sim
-OptionPane.yesButtonMnemonic=83
-OptionPane.noButtonText=N\u00E3o
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Cancelar
-OptionPane.cancelButtonMnemonic=C
-OptionPane.titleText=Selecionar uma Op\u00E7\u00E3o
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Entrada
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Mensagem
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Impress\u00E3o
-PrintingDialog.titleAbortingText=Impress\u00E3o (Abortando)
-
-PrintingDialog.contentInitialText=Impress\u00E3o em andamento...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=P\u00E1gina impressa {0}...
-
-PrintingDialog.contentAbortingText=Abortando impress\u00E3o...
-
-PrintingDialog.abortButtonText=Abortar
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Abortar Impress\u00E3o
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Minimizar
-InternalFrame.maxButtonToolTip=Maximizar
-InternalFrame.restoreButtonToolTip=Restaurar
-InternalFrame.closeButtonToolTip=Fechar
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=Restaurar
-InternalFrameTitlePane.moveButtonText=Mover
-InternalFrameTitlePane.sizeButtonText=Tamanho
-InternalFrameTitlePane.minimizeButtonText=Minimizar
-InternalFrameTitlePane.maximizeButtonText=Maximizar
-InternalFrameTitlePane.closeButtonText=Fechar
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Submeter Consulta
-FormView.resetButtonText=Redefinir
-FormView.browseFileButtonText=Procurar...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=altera\u00E7\u00E3o de estilo
-AbstractDocument.additionText=adi\u00E7\u00E3o
-AbstractDocument.deletionText=dele\u00E7\u00E3o
-AbstractDocument.undoText=Desfazer
-AbstractDocument.redoText=Refazer
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=clicar
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=Desfazer
-AbstractUndoableEdit.redoText=Refazer
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=Progresso...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=bot\u00E3o esquerdo
-SplitPane.rightButtonText=bot\u00E3o direito
-# Used for Isindex
-IsindexView.prompt=Trata-se de um \u00EDndice pesquis\u00E1vel. Informe as palavras-chave de pesquisa:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Iconify
-InternalFrameTitlePane.maximizeButtonAccessibleName=Maximizar
-InternalFrameTitlePane.closeButtonAccessibleName=Fechar
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Arquivo Gen\u00E9rico
+FileChooser.directoryDescription.textAndMnemonic=Diret\u00F3rio
+FileChooser.newFolderError.textAndMnemonic=Erro ao criar nova pasta
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=N\u00E3o \u00E9 poss\u00EDvel criar a pasta
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=N\u00E3o \u00E9 poss\u00EDvel criar a pasta.\n\nO sistema n\u00E3o pode localizar o caminho especificado.
+FileChooser.renameErrorTitle.textAndMnemonic=Erro ao Renomear o Arquivo ou a Pasta
+FileChooser.renameError.textAndMnemonic=N\u00E3o \u00E9 poss\u00EDvel renomear {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=N\u00E3o \u00E9 poss\u00EDvel renomear {0}: Um arquivo com o nome especificado j\u00E1 existe. Especifique outro nome de arquivo.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Todos os Arquivos
+FileChooser.cancelButton.textAndMnemonic=&Cancelar
+FileChooser.saveButton.textAndMnemonic=&Salvar
+FileChooser.openButton.textAndMnemonic=A&brir
+FileChooser.saveDialogTitle.textAndMnemonic=Salvar
+FileChooser.openDialogTitle.textAndMnemonic=Abrir
+FileChooser.updateButton.textAndMnemonic=At&ualizar
+FileChooser.helpButton.textAndMnemonic=Aj&uda
+FileChooser.directoryOpenButton.textAndMnemonic=A&brir
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Nova Pasta
+FileChooser.win32.newFolder.subsequent=Nova Pasta ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Abortar caixa de di\u00E1logo do seletor de arquivos
+FileChooser.saveButtonToolTip.textAndMnemonic=Salvar arquivo selecionado
+FileChooser.openButtonToolTip.textAndMnemonic=Abrir arquivo selecionado
+FileChooser.updateButtonToolTip.textAndMnemonic=Atualizar lista de diret\u00F3rios
+FileChooser.helpButtonToolTip.textAndMnemonic=Ajuda do FileChooser
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=Abrir diret\u00F3rio selecionado
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Visualizar
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Cancelar
+ColorChooser.reset.textAndMnemonic=&Redefinir
+ColorChooser.sample.textAndMnemonic=Texto de Amostra Texto de Amostra
+ColorChooser.swatches.textAndMnemonic=Amo&stras
+ColorChooser.swatchesRecent.textAndMnemonic=Recente:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Matiz
+ColorChooser.hsvSaturation.textAndMnemonic=Satura\u00E7\u00E3o
+ColorChooser.hsvValue.textAndMnemonic=Valor
+ColorChooser.hsvTransparency.textAndMnemonic=Transpar\u00EAncia
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Matiz
+ColorChooser.hslSaturation.textAndMnemonic=Satura\u00E7\u00E3o
+ColorChooser.hslLightness.textAndMnemonic=Clareza
+ColorChooser.hslTransparency.textAndMnemonic=Transpar\u00EAncia
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=&Vermelho
+ColorChooser.rgbGreen.textAndMnemonic=&Verde
+ColorChooser.rgbBlue.textAndMnemonic=&Azul
+ColorChooser.rgbAlpha.textAndMnemonic=Alfa
+ColorChooser.rgbHexCode.textAndMnemonic=C\u00F3digo da Cor(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Ciano
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Amarelo
+ColorChooser.cmykBlack.textAndMnemonic=Preto
+ColorChooser.cmykAlpha.textAndMnemonic=Alfa
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=&Sim
+OptionPane.noButton.textAndMnemonic=N\u00E3o(&N)
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=&Cancelar
+OptionPane.title.textAndMnemonic=Selecionar uma Op\u00E7\u00E3o
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Entrada
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Mensagem
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Impress\u00E3o
+PrintingDialog.titleAborting.textAndMnemonic=Impress\u00E3o (Abortando)
+
+PrintingDialog.contentInitial.textAndMnemonic=Impress\u00E3o em andamento...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=P\u00E1gina impressa {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=Abortando impress\u00E3o...
+
+PrintingDialog.abortButton.textAndMnemonic=&Abortar
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Abortar Impress\u00E3o
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Minimizar
+InternalFrame.maxButtonToolTip=Maximizar
+InternalFrame.restoreButtonToolTip=Restaurar
+InternalFrame.closeButtonToolTip=Fechar
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=Restaurar
+InternalFrameTitlePane.moveButton.textAndMnemonic=Mover
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Tamanho
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Minimizar
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Maximizar
+InternalFrameTitlePane.closeButton.textAndMnemonic=Fechar
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Submeter Consulta
+FormView.resetButton.textAndMnemonic=Redefinir
+FormView.browseFileButton.textAndMnemonic=Procurar...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=altera\u00E7\u00E3o de estilo
+AbstractDocument.addition.textAndMnemonic=adi\u00E7\u00E3o
+AbstractDocument.deletion.textAndMnemonic=dele\u00E7\u00E3o
+AbstractDocument.undo.textAndMnemonic=Desfazer
+AbstractDocument.redo.textAndMnemonic=Refazer
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=clicar
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=Desfazer
+AbstractUndoableEdit.redo.textAndMnemonic=Refazer
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=Progresso...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=bot\u00E3o esquerdo
+SplitPane.rightButton.textAndMnemonic=bot\u00E3o direito
+# Used for Isindex
+IsindexView.prompt=Trata-se de um \u00EDndice pesquis\u00E1vel. Informe as palavras-chave de pesquisa:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Iconify
+InternalFrameTitlePane.maximizeButtonAccessibleName=Maximizar
+InternalFrameTitlePane.closeButtonAccessibleName=Fechar
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=Generisk fil
-FileChooser.directoryDescriptionText=Katalog
-FileChooser.newFolderErrorText=Fel uppstod n\u00E4r ny mapp skapades
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=Kan inte skapa mappen
-FileChooser.newFolderParentDoesntExistText=Kan inte skapa mappen.\n\nSystemet kan inte hitta angiven s\u00F6kv\u00E4g.
-FileChooser.renameErrorTitleText=Ett fel intr\u00E4ffade vid f\u00F6rs\u00F6k att \u00E4ndra namn p\u00E5 fil eller mapp
-FileChooser.renameErrorText=Kan inte namn\u00E4ndra {0}
-FileChooser.renameErrorFileExistsText=Kan inte namn\u00E4ndra {0}: En fil med angivet namn finns redan. Ange ett annat filnamn.
-FileChooser.acceptAllFileFilterText=Alla filer
-FileChooser.cancelButtonText=Avbryt
-FileChooser.cancelButtonMnemonic=65
-FileChooser.saveButtonText=Spara
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\u00D6ppna
-FileChooser.openButtonMnemonic=80
-FileChooser.saveDialogTitleText=Spara
-FileChooser.openDialogTitleText=\u00D6ppna
-FileChooser.updateButtonText=Uppdatera
-FileChooser.updateButtonMnemonic=68
-FileChooser.helpButtonText=Hj\u00E4lp
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\u00D6ppna
-FileChooser.directoryOpenButtonMnemonic=80
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=Ny mapp
-FileChooser.win32.newFolder.subsequent=Ny mapp ({0})
-FileChooser.other.newFolder=Ny mapp
-FileChooser.other.newFolder.subsequent=Ny mapp.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=Avbryt filvalsdialogruta
-FileChooser.saveButtonToolTipText=Spara vald fil
-FileChooser.openButtonToolTipText=\u00D6ppna vald fil
-FileChooser.updateButtonToolTipText=Uppdatera kataloglistan
-FileChooser.helpButtonToolTipText=Hj\u00E4lp - Filv\u00E4ljare
-FileChooser.directoryOpenButtonToolTipText=\u00D6ppna vald katalog
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=Granska
-ColorChooser.okText=OK
-ColorChooser.cancelText=Avbryt
-ColorChooser.resetText=\u00C5terst\u00E4ll
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=84
-ColorChooser.sampleText=Exempeltext  Exempeltext
-ColorChooser.swatchesNameText=Prov
-ColorChooser.swatchesMnemonic=80
-ColorChooser.swatchesRecentText=Senaste:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=Nyans
-ColorChooser.hsvSaturationText=M\u00E4ttnad
-ColorChooser.hsvValueText=V\u00E4rde
-ColorChooser.hsvTransparencyText=Transparens
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=Nyans
-ColorChooser.hslSaturationText=M\u00E4ttnad
-ColorChooser.hslLightnessText=Ljusstyrka
-ColorChooser.hslTransparencyText=Transparens
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=R\u00F6d
-ColorChooser.rgbRedMnemonic=68
-ColorChooser.rgbGreenText=Gr\u00F6n
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=Bl\u00E5
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alfa
-ColorChooser.rgbHexCodeText=F\u00E4rgkod
-ColorChooser.rgbHexCodeMnemonic=70
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=Cyan
-ColorChooser.cmykMagentaText=Magenta
-ColorChooser.cmykYellowText=Gul
-ColorChooser.cmykBlackText=Svart
-ColorChooser.cmykAlphaText=Alfa
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=Ja
-OptionPane.yesButtonMnemonic=74
-OptionPane.noButtonText=Nej
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=OK
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=Avbryt
-OptionPane.cancelButtonMnemonic=A
-OptionPane.titleText=V\u00E4lj ett alternativ
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=Indata
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=Meddelande
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=Skriver ut
-PrintingDialog.titleAbortingText=Skriver ut (avbryter)
-
-PrintingDialog.contentInitialText=Utskrift p\u00E5g\u00E5r...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=Utskriven sida {0}...
-
-PrintingDialog.contentAbortingText=Utskriften avbryts...
-
-PrintingDialog.abortButtonText=Avbryt
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=Avbryt utskrift
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=Minimera
-InternalFrame.maxButtonToolTip=Maximera
-InternalFrame.restoreButtonToolTip=\u00C5terst\u00E4ll
-InternalFrame.closeButtonToolTip=St\u00E4ng
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=\u00C5terst\u00E4ll
-InternalFrameTitlePane.moveButtonText=Flytta
-InternalFrameTitlePane.sizeButtonText=Storlek
-InternalFrameTitlePane.minimizeButtonText=Minimera
-InternalFrameTitlePane.maximizeButtonText=Maximera
-InternalFrameTitlePane.closeButtonText=St\u00E4ng
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=Skicka fr\u00E5ga
-FormView.resetButtonText=\u00C5terst\u00E4ll
-FormView.browseFileButtonText=Bl\u00E4ddra...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=format\u00E4ndring
-AbstractDocument.additionText=till\u00E4gg
-AbstractDocument.deletionText=borttagning
-AbstractDocument.undoText=\u00C5ngra
-AbstractDocument.redoText=G\u00F6r om
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=klicka
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=\u00C5ngra
-AbstractUndoableEdit.redoText=G\u00F6r om
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=v\u00E4xlaPopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=P\u00E5g\u00E5r...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=v\u00E4nster knapp
-SplitPane.rightButtonText=h\u00F6ger knapp
-# Used for Isindex
-IsindexView.prompt=Detta \u00E4r ett s\u00F6kbart index. Ange s\u00F6kord:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=Minimera
-InternalFrameTitlePane.maximizeButtonAccessibleName=Maximera
-InternalFrameTitlePane.closeButtonAccessibleName=St\u00E4ng
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=Generisk fil
+FileChooser.directoryDescription.textAndMnemonic=Katalog
+FileChooser.newFolderError.textAndMnemonic=Fel uppstod n\u00E4r ny mapp skapades
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Kan inte skapa mappen
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=Kan inte skapa mappen.\n\nSystemet kan inte hitta angiven s\u00F6kv\u00E4g.
+FileChooser.renameErrorTitle.textAndMnemonic=Ett fel intr\u00E4ffade vid f\u00F6rs\u00F6k att \u00E4ndra namn p\u00E5 fil eller mapp
+FileChooser.renameError.textAndMnemonic=Kan inte namn\u00E4ndra {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=Kan inte namn\u00E4ndra {0}: En fil med angivet namn finns redan. Ange ett annat filnamn.
+FileChooser.acceptAllFileFilter.textAndMnemonic=Alla filer
+FileChooser.cancelButton.textAndMnemonic=&Avbryt
+FileChooser.saveButton.textAndMnemonic=&Spara
+FileChooser.openButton.textAndMnemonic=\u00D6ppna(&P)
+FileChooser.saveDialogTitle.textAndMnemonic=Spara
+FileChooser.openDialogTitle.textAndMnemonic=\u00D6ppna
+FileChooser.updateButton.textAndMnemonic=Upp&datera
+FileChooser.helpButton.textAndMnemonic=Hj\u00E4lp(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=\u00D6ppna(&P)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=Ny mapp
+FileChooser.win32.newFolder.subsequent=Ny mapp ({0})
+FileChooser.other.newFolder=Ny mapp
+FileChooser.other.newFolder.subsequent=Ny mapp.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt filvalsdialogruta
+FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil
+FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil
+FileChooser.updateButtonToolTip.textAndMnemonic=Uppdatera kataloglistan
+FileChooser.helpButtonToolTip.textAndMnemonic=Hj\u00E4lp - Filv\u00E4ljare
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\u00D6ppna vald katalog
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=Granska
+ColorChooser.ok.textAndMnemonic=OK
+ColorChooser.cancel.textAndMnemonic=Avbryt
+ColorChooser.reset.textAndMnemonic=\u00C5terst\u00E4ll(&T)
+ColorChooser.sample.textAndMnemonic=Exempeltext  Exempeltext
+ColorChooser.swatches.textAndMnemonic=&Prov
+ColorChooser.swatchesRecent.textAndMnemonic=Senaste:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=Nyans
+ColorChooser.hsvSaturation.textAndMnemonic=M\u00E4ttnad
+ColorChooser.hsvValue.textAndMnemonic=V\u00E4rde
+ColorChooser.hsvTransparency.textAndMnemonic=Transparens
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=Nyans
+ColorChooser.hslSaturation.textAndMnemonic=M\u00E4ttnad
+ColorChooser.hslLightness.textAndMnemonic=Ljusstyrka
+ColorChooser.hslTransparency.textAndMnemonic=Transparens
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=R\u00F6d(&D)
+ColorChooser.rgbGreen.textAndMnemonic=Gr\u00F6n(&N)
+ColorChooser.rgbBlue.textAndMnemonic=Bl\u00E5(&B)
+ColorChooser.rgbAlpha.textAndMnemonic=Alfa
+ColorChooser.rgbHexCode.textAndMnemonic=F\u00E4rgkod(&F)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=Cyan
+ColorChooser.cmykMagenta.textAndMnemonic=Magenta
+ColorChooser.cmykYellow.textAndMnemonic=Gul
+ColorChooser.cmykBlack.textAndMnemonic=Svart
+ColorChooser.cmykAlpha.textAndMnemonic=Alfa
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=&Ja
+OptionPane.noButton.textAndMnemonic=&Nej
+OptionPane.okButton.textAndMnemonic=&OK
+OptionPane.cancelButton.textAndMnemonic=&Avbryt
+OptionPane.title.textAndMnemonic=V\u00E4lj ett alternativ
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=Indata
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=Meddelande
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=Skriver ut
+PrintingDialog.titleAborting.textAndMnemonic=Skriver ut (avbryter)
+
+PrintingDialog.contentInitial.textAndMnemonic=Utskrift p\u00E5g\u00E5r...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=Utskriven sida {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=Utskriften avbryts...
+
+PrintingDialog.abortButton.textAndMnemonic=&Avbryt
+PrintingDialog.abortButtonToolTip.textAndMnemonic=Avbryt utskrift
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=Minimera
+InternalFrame.maxButtonToolTip=Maximera
+InternalFrame.restoreButtonToolTip=\u00C5terst\u00E4ll
+InternalFrame.closeButtonToolTip=St\u00E4ng
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=\u00C5terst\u00E4ll
+InternalFrameTitlePane.moveButton.textAndMnemonic=Flytta
+InternalFrameTitlePane.sizeButton.textAndMnemonic=Storlek
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=Minimera
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=Maximera
+InternalFrameTitlePane.closeButton.textAndMnemonic=St\u00E4ng
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=Skicka fr\u00E5ga
+FormView.resetButton.textAndMnemonic=\u00C5terst\u00E4ll
+FormView.browseFileButton.textAndMnemonic=Bl\u00E4ddra...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=format\u00E4ndring
+AbstractDocument.addition.textAndMnemonic=till\u00E4gg
+AbstractDocument.deletion.textAndMnemonic=borttagning
+AbstractDocument.undo.textAndMnemonic=\u00C5ngra
+AbstractDocument.redo.textAndMnemonic=G\u00F6r om
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=klicka
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=\u00C5ngra
+AbstractUndoableEdit.redo.textAndMnemonic=G\u00F6r om
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=v\u00E4xlaPopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=P\u00E5g\u00E5r...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=v\u00E4nster knapp
+SplitPane.rightButton.textAndMnemonic=h\u00F6ger knapp
+# Used for Isindex
+IsindexView.prompt=Detta \u00E4r ett s\u00F6kbart index. Ange s\u00F6kord:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=Minimera
+InternalFrameTitlePane.maximizeButtonAccessibleName=Maximera
+InternalFrameTitlePane.closeButtonAccessibleName=St\u00E4ng
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=\u666E\u901A\u7684\u6587\u4EF6
-FileChooser.directoryDescriptionText=\u76EE\u5F55
-FileChooser.newFolderErrorText=\u521B\u5EFA\u65B0\u7684\u6587\u4EF6\u5939\u65F6\u51FA\u9519
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=\u65E0\u6CD5\u521B\u5EFA\u6587\u4EF6\u5939
-FileChooser.newFolderParentDoesntExistText=\u65E0\u6CD5\u521B\u5EFA\u6587\u4EF6\u5939\u3002\n\n\u7CFB\u7EDF\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u8DEF\u5F84\u3002
-FileChooser.renameErrorTitleText=\u91CD\u547D\u540D\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u65F6\u51FA\u9519
-FileChooser.renameErrorText=\u65E0\u6CD5\u91CD\u547D\u540D{0}
-FileChooser.renameErrorFileExistsText=\u65E0\u6CD5\u91CD\u547D\u540D{0}: \u5DF2\u5B58\u5728\u5177\u6709\u6240\u6307\u5B9A\u540D\u79F0\u7684\u6587\u4EF6\u3002\u8BF7\u6307\u5B9A\u5176\u4ED6\u6587\u4EF6\u540D\u3002
-FileChooser.acceptAllFileFilterText=\u6240\u6709\u6587\u4EF6
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\u4FDD\u5B58
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\u6253\u5F00
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u4FDD\u5B58
-FileChooser.openDialogTitleText=\u6253\u5F00
-FileChooser.updateButtonText=\u66F4\u65B0(U)
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=\u5E2E\u52A9(H)
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\u6253\u5F00(O)
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=\u65B0\u5EFA\u6587\u4EF6\u5939
-FileChooser.win32.newFolder.subsequent=\u65B0\u5EFA\u6587\u4EF6\u5939 ({0})
-FileChooser.other.newFolder=NewFolder
-FileChooser.other.newFolder.subsequent=NewFolder.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=\u4E2D\u6B62\u6587\u4EF6\u9009\u62E9\u5668\u5BF9\u8BDD\u6846
-FileChooser.saveButtonToolTipText=\u4FDD\u5B58\u6240\u9009\u6587\u4EF6
-FileChooser.openButtonToolTipText=\u6253\u5F00\u6240\u9009\u6587\u4EF6
-FileChooser.updateButtonToolTipText=\u66F4\u65B0\u76EE\u5F55\u5217\u8868
-FileChooser.helpButtonToolTipText=FileChooser \u5E2E\u52A9
-FileChooser.directoryOpenButtonToolTipText=\u6253\u5F00\u9009\u62E9\u7684\u76EE\u5F55
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=\u9884\u89C8
-ColorChooser.okText=\u786E\u5B9A
-ColorChooser.cancelText=\u53D6\u6D88
-ColorChooser.resetText=\u91CD\u7F6E(R)
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=\u793A\u4F8B\u6587\u672C  \u793A\u4F8B\u6587\u672C
-ColorChooser.swatchesNameText=\u793A\u4F8B(S)
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=\u6700\u8FD1:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=\u8272\u8C03
-ColorChooser.hsvSaturationText=\u9971\u548C\u5EA6
-ColorChooser.hsvValueText=\u503C
-ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=\u8272\u8C03
-ColorChooser.hslSaturationText=\u9971\u548C\u5EA6
-ColorChooser.hslLightnessText=\u4EAE\u5EA6
-ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=\u7EA2\u8272
-ColorChooser.rgbRedMnemonic=68
-ColorChooser.rgbGreenText=\u7EFF\u8272
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=\u84DD\u8272
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alpha
-ColorChooser.rgbHexCodeText=\u989C\u8272\u4EE3\u7801(C)
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=\u9752\u8272
-ColorChooser.cmykMagentaText=\u7D2B\u7EA2\u8272
-ColorChooser.cmykYellowText=\u9EC4\u8272
-ColorChooser.cmykBlackText=\u9ED1\u8272
-ColorChooser.cmykAlphaText=Alpha
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=\u662F(Y)
-OptionPane.yesButtonMnemonic=89
-OptionPane.noButtonText=\u5426(N)
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=\u786E\u5B9A
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=\u53D6\u6D88
-OptionPane.cancelButtonMnemonic=0
-OptionPane.titleText=\u9009\u62E9\u4E00\u4E2A\u9009\u9879
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=\u8F93\u5165
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=\u6D88\u606F
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=\u6253\u5370
-PrintingDialog.titleAbortingText=\u6253\u5370 (\u6B63\u5728\u4E2D\u6B62)
-
-PrintingDialog.contentInitialText=\u6B63\u5728\u8FDB\u884C\u6253\u5370...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=\u5DF2\u6253\u5370\u9875 {0}...
-
-PrintingDialog.contentAbortingText=\u6B63\u5728\u4E2D\u6B62\u6253\u5370...
-
-PrintingDialog.abortButtonText=\u4E2D\u6B62(A)
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=\u4E2D\u6B62\u6253\u5370
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
-InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
-InternalFrame.restoreButtonToolTip=\u8FD8\u539F
-InternalFrame.closeButtonToolTip=\u5173\u95ED
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=\u8FD8\u539F
-InternalFrameTitlePane.moveButtonText=\u79FB\u52A8
-InternalFrameTitlePane.sizeButtonText=\u5927\u5C0F
-InternalFrameTitlePane.minimizeButtonText=\u6700\u5C0F\u5316
-InternalFrameTitlePane.maximizeButtonText=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonText=\u5173\u95ED
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=\u63D0\u4EA4\u67E5\u8BE2
-FormView.resetButtonText=\u91CD\u8BBE
-FormView.browseFileButtonText=\u6D4F\u89C8...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=\u6837\u5F0F\u66F4\u6539
-AbstractDocument.additionText=\u6DFB\u52A0
-AbstractDocument.deletionText=\u5220\u9664
-AbstractDocument.undoText=\u64A4\u6D88
-AbstractDocument.redoText=\u91CD\u505A
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=\u5355\u51FB
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=\u64A4\u6D88
-AbstractUndoableEdit.redoText=\u91CD\u505A
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=togglePopup
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=\u8FDB\u5EA6...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=\u5DE6\u952E
-SplitPane.rightButtonText=\u53F3\u952E
-# Used for Isindex
-IsindexView.prompt=\u8FD9\u662F\u53EF\u641C\u7D22\u7D22\u5F15\u3002\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=\u56FE\u6807\u5316
-InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonAccessibleName=\u5173\u95ED
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=\u666E\u901A\u7684\u6587\u4EF6
+FileChooser.directoryDescription.textAndMnemonic=\u76EE\u5F55
+FileChooser.newFolderError.textAndMnemonic=\u521B\u5EFA\u65B0\u7684\u6587\u4EF6\u5939\u65F6\u51FA\u9519
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=\u65E0\u6CD5\u521B\u5EFA\u6587\u4EF6\u5939
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=\u65E0\u6CD5\u521B\u5EFA\u6587\u4EF6\u5939\u3002\n\n\u7CFB\u7EDF\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u8DEF\u5F84\u3002
+FileChooser.renameErrorTitle.textAndMnemonic=\u91CD\u547D\u540D\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u65F6\u51FA\u9519
+FileChooser.renameError.textAndMnemonic=\u65E0\u6CD5\u91CD\u547D\u540D{0}
+FileChooser.renameErrorFileExists.textAndMnemonic=\u65E0\u6CD5\u91CD\u547D\u540D{0}: \u5DF2\u5B58\u5728\u5177\u6709\u6240\u6307\u5B9A\u540D\u79F0\u7684\u6587\u4EF6\u3002\u8BF7\u6307\u5B9A\u5176\u4ED6\u6587\u4EF6\u540D\u3002
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u6240\u6709\u6587\u4EF6
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=\u4FDD\u5B58(&S)
+FileChooser.openButton.textAndMnemonic=\u6253\u5F00(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\u4FDD\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u6253\u5F00
+FileChooser.updateButton.textAndMnemonic=\u66F4\u65B0(&U)
+FileChooser.helpButton.textAndMnemonic=\u5E2E\u52A9(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=\u6253\u5F00(&O)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=\u65B0\u5EFA\u6587\u4EF6\u5939
+FileChooser.win32.newFolder.subsequent=\u65B0\u5EFA\u6587\u4EF6\u5939 ({0})
+FileChooser.other.newFolder=NewFolder
+FileChooser.other.newFolder.subsequent=NewFolder.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u6587\u4EF6\u9009\u62E9\u5668\u5BF9\u8BDD\u6846
+FileChooser.saveButtonToolTip.textAndMnemonic=\u4FDD\u5B58\u6240\u9009\u6587\u4EF6
+FileChooser.openButtonToolTip.textAndMnemonic=\u6253\u5F00\u6240\u9009\u6587\u4EF6
+FileChooser.updateButtonToolTip.textAndMnemonic=\u66F4\u65B0\u76EE\u5F55\u5217\u8868
+FileChooser.helpButtonToolTip.textAndMnemonic=FileChooser \u5E2E\u52A9
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\u6253\u5F00\u9009\u62E9\u7684\u76EE\u5F55
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=\u9884\u89C8
+ColorChooser.ok.textAndMnemonic=\u786E\u5B9A
+ColorChooser.cancel.textAndMnemonic=\u53D6\u6D88
+ColorChooser.reset.textAndMnemonic=\u91CD\u7F6E(&R)
+ColorChooser.sample.textAndMnemonic=\u793A\u4F8B\u6587\u672C  \u793A\u4F8B\u6587\u672C
+ColorChooser.swatches.textAndMnemonic=\u793A\u4F8B(&S)
+ColorChooser.swatchesRecent.textAndMnemonic=\u6700\u8FD1:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=\u8272\u8C03
+ColorChooser.hsvSaturation.textAndMnemonic=\u9971\u548C\u5EA6
+ColorChooser.hsvValue.textAndMnemonic=\u503C
+ColorChooser.hsvTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=\u8272\u8C03
+ColorChooser.hslSaturation.textAndMnemonic=\u9971\u548C\u5EA6
+ColorChooser.hslLightness.textAndMnemonic=\u4EAE\u5EA6
+ColorChooser.hslTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=\u7EA2\u8272(&D)
+ColorChooser.rgbGreen.textAndMnemonic=\u7EFF\u8272(&N)
+ColorChooser.rgbBlue.textAndMnemonic=\u84DD\u8272(&B)
+ColorChooser.rgbAlpha.textAndMnemonic=Alpha
+ColorChooser.rgbHexCode.textAndMnemonic=\u989C\u8272\u4EE3\u7801(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=\u9752\u8272
+ColorChooser.cmykMagenta.textAndMnemonic=\u7D2B\u7EA2\u8272
+ColorChooser.cmykYellow.textAndMnemonic=\u9EC4\u8272
+ColorChooser.cmykBlack.textAndMnemonic=\u9ED1\u8272
+ColorChooser.cmykAlpha.textAndMnemonic=Alpha
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=\u662F(&Y)
+OptionPane.noButton.textAndMnemonic=\u5426(&N)
+OptionPane.okButton.textAndMnemonic=\u786E\u5B9A(&O)
+OptionPane.cancelButton.textAndMnemonic=\u53D6\u6D88
+OptionPane.title.textAndMnemonic=\u9009\u62E9\u4E00\u4E2A\u9009\u9879
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=\u8F93\u5165
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=\u6D88\u606F
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=\u6253\u5370
+PrintingDialog.titleAborting.textAndMnemonic=\u6253\u5370 (\u6B63\u5728\u4E2D\u6B62)
+
+PrintingDialog.contentInitial.textAndMnemonic=\u6B63\u5728\u8FDB\u884C\u6253\u5370...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=\u5DF2\u6253\u5370\u9875 {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=\u6B63\u5728\u4E2D\u6B62\u6253\u5370...
+
+PrintingDialog.abortButton.textAndMnemonic=\u4E2D\u6B62(&A)
+PrintingDialog.abortButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u6253\u5370
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
+InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
+InternalFrame.restoreButtonToolTip=\u8FD8\u539F
+InternalFrame.closeButtonToolTip=\u5173\u95ED
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=\u8FD8\u539F
+InternalFrameTitlePane.moveButton.textAndMnemonic=\u79FB\u52A8
+InternalFrameTitlePane.sizeButton.textAndMnemonic=\u5927\u5C0F
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=\u6700\u5C0F\u5316
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButton.textAndMnemonic=\u5173\u95ED
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=\u63D0\u4EA4\u67E5\u8BE2
+FormView.resetButton.textAndMnemonic=\u91CD\u8BBE
+FormView.browseFileButton.textAndMnemonic=\u6D4F\u89C8...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=\u6837\u5F0F\u66F4\u6539
+AbstractDocument.addition.textAndMnemonic=\u6DFB\u52A0
+AbstractDocument.deletion.textAndMnemonic=\u5220\u9664
+AbstractDocument.undo.textAndMnemonic=\u64A4\u6D88
+AbstractDocument.redo.textAndMnemonic=\u91CD\u505A
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=\u5355\u51FB
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=\u64A4\u6D88
+AbstractUndoableEdit.redo.textAndMnemonic=\u91CD\u505A
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=togglePopup
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=\u8FDB\u5EA6...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=\u5DE6\u952E
+SplitPane.rightButton.textAndMnemonic=\u53F3\u952E
+# Used for Isindex
+IsindexView.prompt=\u8FD9\u662F\u53EF\u641C\u7D22\u7D22\u5F15\u3002\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=\u56FE\u6807\u5316
+InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButtonAccessibleName=\u5173\u95ED
+
--- a/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,229 +1,186 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used in Swing
-# Currently, the following components need this for support:
-#
-#    ColorChooser
-#    FileChooser
-#    OptionPane
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-#                        MNEMONIC NOTE:
-# Many of strings in this file are used by widgets that have a
-# mnemonic, for example:
-#   ColorChooser.rgbNameText=RGB
-#   ColorChooser.rgbMnemonic=71
-#   ColorChooser.rgbDisplayedMnemonicIndex=1
-# Indicates that the tab in the ColorChooser for RGB colors will have
-# the text 'RGB', further the mnemonic character will be 'g' and that
-# a decoration will be provided under the 'G'. This will typically
-# look like:  RGB
-#              -
-# 71 corresponds to the decimal value of the VK constant defined
-# in java/awt/KeyEvent.java. VK_G is defined as:
-#
-#    public static final int VK_G              = 0x47;
-#
-# 0x47 is a hex number and needs to be converted to decimal.
-# A simple way to calculate this for a-z is to add 64 to the index of
-# the letter in the alphabet. As 'a' is in the 1st letter the mnemonic
-# for 'a' is 65, 'b' is 66...
-#
-# The xxDisplayedMnemonicIndex is used to indicate the index of the
-# character that should be underlined in the String, with 0
-# corresponding to the first character in the String.
-#
-# One important thing to remember is that the mnemonic MUST exist in
-# the String, if it does not exist you should add text that makes it
-# exist. This will typically take the form 'XXXX (M)' where M is the
-# character for the mnemonic.
-#
-# @author Steve Wilson
-
-############ FILE CHOOSER STRINGS #############
-FileChooser.fileDescriptionText=\u4E00\u822C\u6A94\u6848
-FileChooser.directoryDescriptionText=\u76EE\u9304
-FileChooser.newFolderErrorText=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E\u6642\u767C\u751F\u932F\u8AA4
-FileChooser.newFolderErrorSeparator= :
-FileChooser.newFolderParentDoesntExistTitleText=\u7121\u6CD5\u5EFA\u7ACB\u8CC7\u6599\u593E
-FileChooser.newFolderParentDoesntExistText=\u7121\u6CD5\u5EFA\u7ACB\u8CC7\u6599\u593E\u3002\n\n\u7CFB\u7D71\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u8DEF\u5F91\u3002
-FileChooser.renameErrorTitleText=\u91CD\u65B0\u547D\u540D\u6A94\u6848\u6216\u8CC7\u6599\u593E\u6642\u767C\u751F\u932F\u8AA4\u3002
-FileChooser.renameErrorText=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0}
-FileChooser.renameErrorFileExistsText=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0}: \u5DF2\u7D93\u5B58\u5728\u60A8\u6240\u6307\u5B9A\u540D\u7A31\u7684\u6A94\u6848\u3002\u8ACB\u6307\u5B9A\u4E0D\u540C\u7684\u540D\u7A31\u3002
-FileChooser.acceptAllFileFilterText=\u6240\u6709\u6A94\u6848
-FileChooser.cancelButtonText=\u53D6\u6D88
-FileChooser.cancelButtonMnemonic=67
-FileChooser.saveButtonText=\u5132\u5B58
-FileChooser.saveButtonMnemonic=83
-FileChooser.openButtonText=\u958B\u555F
-FileChooser.openButtonMnemonic=79
-FileChooser.saveDialogTitleText=\u5132\u5B58
-FileChooser.openDialogTitleText=\u958B\u555F
-FileChooser.updateButtonText=\u66F4\u65B0(U)
-FileChooser.updateButtonMnemonic=85
-FileChooser.helpButtonText=\u8AAA\u660E(H)
-FileChooser.helpButtonMnemonic=72
-FileChooser.directoryOpenButtonText=\u958B\u555F(O)
-FileChooser.directoryOpenButtonMnemonic=79
-
-# File Size Units
-FileChooser.fileSizeKiloBytes={0} KB
-FileChooser.fileSizeMegaBytes={0} MB
-FileChooser.fileSizeGigaBytes={0} GB
-
-# These strings are platform dependent not look and feel dependent.
-FileChooser.win32.newFolder=\u65B0\u8CC7\u6599\u593E
-FileChooser.win32.newFolder.subsequent=\u65B0\u8CC7\u6599\u593E ({0})
-FileChooser.other.newFolder=\u65B0\u8CC7\u6599\u593E
-FileChooser.other.newFolder.subsequent=\u65B0\u8CC7\u6599\u593E.{0}
-
-
-## file chooser tooltips ###
-FileChooser.cancelButtonToolTipText=\u4E2D\u6B62\u6A94\u6848\u9078\u64C7\u5668\u5C0D\u8A71\u65B9\u584A
-FileChooser.saveButtonToolTipText=\u5132\u5B58\u9078\u53D6\u7684\u6A94\u6848
-FileChooser.openButtonToolTipText=\u958B\u555F\u9078\u53D6\u7684\u6A94\u6848
-FileChooser.updateButtonToolTipText=\u66F4\u65B0\u76EE\u9304\u6E05\u55AE
-FileChooser.helpButtonToolTipText=\u300C\u6A94\u6848\u9078\u64C7\u5668\u300D\u8AAA\u660E
-FileChooser.directoryOpenButtonToolTipText=\u958B\u555F\u9078\u53D6\u7684\u76EE\u9304
-
-FileChooser.filesListAccessibleName=Files List
-FileChooser.filesDetailsAccessibleName=Files Details
-
-############ COLOR CHOOSER STRINGS #############
-ColorChooser.previewText=\u9810\u89BD
-ColorChooser.okText=\u78BA\u5B9A
-ColorChooser.cancelText=\u53D6\u6D88
-ColorChooser.resetText=\u91CD\u8A2D(R)
-# VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic
-ColorChooser.resetMnemonic=82
-ColorChooser.sampleText=\u7BC4\u4F8B\u6587\u5B57  \u7BC4\u4F8B\u6587\u5B57
-ColorChooser.swatchesNameText=\u8ABF\u8272\u677F(S)
-ColorChooser.swatchesMnemonic=83
-ColorChooser.swatchesRecentText=\u6700\u65B0\u9078\u64C7:
-# Each of the ColorChooser types can define a mnemonic, as a KeyEvent.VK_XXX
-# constant, and an index into the text to render the mnemonic as. The
-# mnemonic is xxxMnemonic and the index of the character to underline is
-# xxxDisplayedMnemonicIndex.
-ColorChooser.hsvNameText=HSV
-ColorChooser.hsvMnemonic=72
-ColorChooser.hsvHueText=\u8272\u8ABF
-ColorChooser.hsvSaturationText=\u5F69\u5EA6
-ColorChooser.hsvValueText=\u6578\u503C
-ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.hslNameText=HSL
-ColorChooser.hslMnemonic=76
-ColorChooser.hslHueText=\u8272\u8ABF
-ColorChooser.hslSaturationText=\u5F69\u5EA6
-ColorChooser.hslLightnessText=\u4EAE\u5EA6
-ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6
-ColorChooser.rgbNameText=RGB
-ColorChooser.rgbMnemonic=71
-ColorChooser.rgbRedText=\u7D05
-ColorChooser.rgbRedMnemonic=68
-ColorChooser.rgbGreenText=\u7DA0
-ColorChooser.rgbGreenMnemonic=78
-ColorChooser.rgbBlueText=\u85CD
-ColorChooser.rgbBlueMnemonic=66
-ColorChooser.rgbAlphaText=Alpha
-ColorChooser.rgbHexCodeText=\u984F\u8272\u4EE3\u78BC(C)
-ColorChooser.rgbHexCodeMnemonic=67
-ColorChooser.cmykNameText=CMYK
-ColorChooser.cmykMnemonic=77
-ColorChooser.cmykCyanText=\u85CD\u7DA0\u8272
-ColorChooser.cmykMagentaText=\u7D2B\u7D05\u8272
-ColorChooser.cmykYellowText=\u9EC3\u8272
-ColorChooser.cmykBlackText=\u9ED1\u8272
-ColorChooser.cmykAlphaText=Alpha
-
-############ OPTION PANE STRINGS #############
-# Mnemonic keys correspond to KeyEvent.VK_XXX constant
-# We only define mnemonics for YES/NO, but for completeness you can
-# define mnemonics for any of the buttons.
-OptionPane.yesButtonText=\u662F(Y)
-OptionPane.yesButtonMnemonic=89
-OptionPane.noButtonText=\u5426(N)
-OptionPane.noButtonMnemonic=78
-OptionPane.okButtonText=\u78BA\u5B9A
-OptionPane.okButtonMnemonic=O
-OptionPane.cancelButtonText=\u53D6\u6D88
-OptionPane.cancelButtonMnemonic=0
-OptionPane.titleText=\u9078\u53D6\u4E00\u500B\u9078\u9805
-# Title for the dialog for the showInputDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.inputDialogTitle=\u8F38\u5165
-# Title for the dialog for the showMessageDialog methods. Only used if
-# the developer uses one of the variants that doesn't take a title.
-OptionPane.messageDialogTitle=\u8A0A\u606F
-
-############ Printing Dialog Strings ############
-PrintingDialog.titleProgressText=\u5217\u5370
-PrintingDialog.titleAbortingText=\u5217\u5370 (\u4E2D\u6B62)
-
-PrintingDialog.contentInitialText=\u6B63\u5728\u5217\u5370...
-
-# The following string will be formatted by a MessageFormat
-# and {0} will be replaced by page number being printed
-PrintingDialog.contentProgressText=\u5DF2\u5217\u5370\u7684\u9801\u9762 {0}...
-
-PrintingDialog.contentAbortingText=\u6B63\u5728\u4E2D\u6B62\u5217\u5370...
-
-PrintingDialog.abortButtonText=\u4E2D\u6B62(A)
-PrintingDialog.abortButtonMnemonic=65
-PrintingDialog.abortButtonDisplayedMnemonicIndex=0
-PrintingDialog.abortButtonToolTipText=\u4E2D\u6B62\u5217\u5370
-
-############ Internal Frame Strings ############
-InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
-InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
-InternalFrame.restoreButtonToolTip=\u5FA9\u539F
-InternalFrame.closeButtonToolTip=\u95DC\u9589
-
-############ Internal Frame Title Pane Strings ############
-InternalFrameTitlePane.restoreButtonText=\u5FA9\u539F
-InternalFrameTitlePane.moveButtonText=\u79FB\u52D5
-InternalFrameTitlePane.sizeButtonText=\u5927\u5C0F
-InternalFrameTitlePane.minimizeButtonText=\u6700\u5C0F\u5316
-InternalFrameTitlePane.maximizeButtonText=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonText=\u95DC\u9589
-
-############ Text strings #############
-# Used for html forms
-FormView.submitButtonText=\u9001\u51FA\u67E5\u8A62
-FormView.resetButtonText=\u91CD\u8A2D
-FormView.browseFileButtonText=\u700F\u89BD...
-
-############ Abstract Document Strings ############
-AbstractDocument.styleChangeText=\u6A23\u5F0F\u8B8A\u66F4
-AbstractDocument.additionText=\u9644\u52A0
-AbstractDocument.deletionText=\u522A\u9664
-AbstractDocument.undoText=\u9084\u539F
-AbstractDocument.redoText=\u91CD\u505A
-
-############ Abstract Button Strings ############
-AbstractButton.clickText=\u6309\u4E00\u4E0B
-
-############ Abstract Undoable Edit Strings ############
-AbstractUndoableEdit.undoText=\u9084\u539F
-AbstractUndoableEdit.redoText=\u91CD\u505A
-
-############ Combo Box Strings ############
-ComboBox.togglePopupText=\u5207\u63DB\u5373\u73FE\u5F0F\u8996\u7A97
-
-############ Progress Monitor Strings ############
-ProgressMonitor.progressText=\u9032\u5EA6...
-
-############ Split Pane Strings ############
-SplitPane.leftButtonText=\u5DE6\u6309\u9215
-SplitPane.rightButtonText=\u53F3\u6309\u9215
-# Used for Isindex
-IsindexView.prompt=\u9019\u662F\u4E00\u500B\u53EF\u641C\u5C0B\u7684\u7D22\u5F15\u3002\u8F38\u5165\u641C\u5C0B\u95DC\u9375\u5B57:
-
-############ InternalFrameTitlePane Strings ############
-InternalFrameTitlePane.iconifyButtonAccessibleName=\u5716\u793A\u5316
-InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
-InternalFrameTitlePane.closeButtonAccessibleName=\u95DC\u9589
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used in Swing
+# Currently, the following components need this for support:
+#
+#    ColorChooser
+#    FileChooser
+#    OptionPane
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+#                        MNEMONIC NOTE:
+# Many of strings in this file are used by widgets that have a
+# mnemonic, for example:
+#   ColorChooser.rgbNameTextAndMnemonic=R&GB
+# Indicates that the tab in the ColorChooser for RGB colors will have
+# the text 'RGB', further the mnemonic character will be 'g' and that
+# a decoration will be provided under the 'G'. This will typically
+# look like:  RGB
+#              -
+#
+# One important thing to remember is that the mnemonic MUST exist in
+# the String, if it does not exist you should add text that makes it
+# exist. This will typically take the form 'XXXX (M)' where M is the
+# character for the mnemonic.
+#
+# @author Steve Wilson
+
+############ FILE CHOOSER STRINGS #############
+FileChooser.fileDescription.textAndMnemonic=\u4E00\u822C\u6A94\u6848
+FileChooser.directoryDescription.textAndMnemonic=\u76EE\u9304
+FileChooser.newFolderError.textAndMnemonic=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E\u6642\u767C\u751F\u932F\u8AA4
+FileChooser.newFolderErrorSeparator= :
+FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=\u7121\u6CD5\u5EFA\u7ACB\u8CC7\u6599\u593E
+FileChooser.newFolderParentDoesntExist.textAndMnemonic=\u7121\u6CD5\u5EFA\u7ACB\u8CC7\u6599\u593E\u3002\n\n\u7CFB\u7D71\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u8DEF\u5F91\u3002
+FileChooser.renameErrorTitle.textAndMnemonic=\u91CD\u65B0\u547D\u540D\u6A94\u6848\u6216\u8CC7\u6599\u593E\u6642\u767C\u751F\u932F\u8AA4\u3002
+FileChooser.renameError.textAndMnemonic=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0}
+FileChooser.renameErrorFileExists.textAndMnemonic=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0}: \u5DF2\u7D93\u5B58\u5728\u60A8\u6240\u6307\u5B9A\u540D\u7A31\u7684\u6A94\u6848\u3002\u8ACB\u6307\u5B9A\u4E0D\u540C\u7684\u540D\u7A31\u3002
+FileChooser.acceptAllFileFilter.textAndMnemonic=\u6240\u6709\u6A94\u6848
+FileChooser.cancelButton.textAndMnemonic=\u53D6\u6D88(&C)
+FileChooser.saveButton.textAndMnemonic=\u5132\u5B58(&S)
+FileChooser.openButton.textAndMnemonic=\u958B\u555F(&O)
+FileChooser.saveDialogTitle.textAndMnemonic=\u5132\u5B58
+FileChooser.openDialogTitle.textAndMnemonic=\u958B\u555F
+FileChooser.updateButton.textAndMnemonic=\u66F4\u65B0(&U)
+FileChooser.helpButton.textAndMnemonic=\u8AAA\u660E(&H)
+FileChooser.directoryOpenButton.textAndMnemonic=\u958B\u555F(&O)
+
+# File Size Units
+FileChooser.fileSizeKiloBytes={0} KB
+FileChooser.fileSizeMegaBytes={0} MB
+FileChooser.fileSizeGigaBytes={0} GB
+
+# These strings are platform dependent not look and feel dependent.
+FileChooser.win32.newFolder=\u65B0\u8CC7\u6599\u593E
+FileChooser.win32.newFolder.subsequent=\u65B0\u8CC7\u6599\u593E ({0})
+FileChooser.other.newFolder=\u65B0\u8CC7\u6599\u593E
+FileChooser.other.newFolder.subsequent=\u65B0\u8CC7\u6599\u593E.{0}
+
+
+## file chooser tooltips ###
+FileChooser.cancelButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u6A94\u6848\u9078\u64C7\u5668\u5C0D\u8A71\u65B9\u584A
+FileChooser.saveButtonToolTip.textAndMnemonic=\u5132\u5B58\u9078\u53D6\u7684\u6A94\u6848
+FileChooser.openButtonToolTip.textAndMnemonic=\u958B\u555F\u9078\u53D6\u7684\u6A94\u6848
+FileChooser.updateButtonToolTip.textAndMnemonic=\u66F4\u65B0\u76EE\u9304\u6E05\u55AE
+FileChooser.helpButtonToolTip.textAndMnemonic=\u300C\u6A94\u6848\u9078\u64C7\u5668\u300D\u8AAA\u660E
+FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\u958B\u555F\u9078\u53D6\u7684\u76EE\u9304
+
+FileChooser.filesListAccessibleName=Files List
+FileChooser.filesDetailsAccessibleName=Files Details
+
+############ COLOR CHOOSER STRINGS #############
+ColorChooser.preview.textAndMnemonic=\u9810\u89BD
+ColorChooser.ok.textAndMnemonic=\u78BA\u5B9A
+ColorChooser.cancel.textAndMnemonic=\u53D6\u6D88
+ColorChooser.reset.textAndMnemonic=\u91CD\u8A2D(&R)
+ColorChooser.sample.textAndMnemonic=\u7BC4\u4F8B\u6587\u5B57  \u7BC4\u4F8B\u6587\u5B57
+ColorChooser.swatches.textAndMnemonic=\u8ABF\u8272\u677F(&S)
+ColorChooser.swatchesRecent.textAndMnemonic=\u6700\u65B0\u9078\u64C7:
+ColorChooser.hsv.textAndMnemonic=&HSV
+ColorChooser.hsvHue.textAndMnemonic=\u8272\u8ABF
+ColorChooser.hsvSaturation.textAndMnemonic=\u5F69\u5EA6
+ColorChooser.hsvValue.textAndMnemonic=\u6578\u503C
+ColorChooser.hsvTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.hsl.textAndMnemonic=HS&L
+ColorChooser.hslHue.textAndMnemonic=\u8272\u8ABF
+ColorChooser.hslSaturation.textAndMnemonic=\u5F69\u5EA6
+ColorChooser.hslLightness.textAndMnemonic=\u4EAE\u5EA6
+ColorChooser.hslTransparency.textAndMnemonic=\u900F\u660E\u5EA6
+ColorChooser.rgb.textAndMnemonic=R&GB
+ColorChooser.rgbRed.textAndMnemonic=\u7D05(&D)
+ColorChooser.rgbGreen.textAndMnemonic=\u7DA0(&N)
+ColorChooser.rgbBlue.textAndMnemonic=\u85CD(&B)
+ColorChooser.rgbAlpha.textAndMnemonic=Alpha
+ColorChooser.rgbHexCode.textAndMnemonic=\u984F\u8272\u4EE3\u78BC(&C)
+ColorChooser.cmyk.textAndMnemonic=C&MYK
+ColorChooser.cmykCyan.textAndMnemonic=\u85CD\u7DA0\u8272
+ColorChooser.cmykMagenta.textAndMnemonic=\u7D2B\u7D05\u8272
+ColorChooser.cmykYellow.textAndMnemonic=\u9EC3\u8272
+ColorChooser.cmykBlack.textAndMnemonic=\u9ED1\u8272
+ColorChooser.cmykAlpha.textAndMnemonic=Alpha
+
+############ OPTION PANE STRINGS #############
+# We only define mnemonics for YES/NO, but for completeness you can
+# define mnemonics for any of the buttons.
+OptionPane.yesButton.textAndMnemonic=\u662F(&Y)
+OptionPane.noButton.textAndMnemonic=\u5426(&N)
+OptionPane.okButton.textAndMnemonic=\u78BA\u5B9A(&O)
+OptionPane.cancelButton.textAndMnemonic=\u53D6\u6D88
+OptionPane.title.textAndMnemonic=\u9078\u53D6\u4E00\u500B\u9078\u9805
+# Title for the dialog for the showInputDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.inputDialog.titleAndMnemonic=\u8F38\u5165
+# Title for the dialog for the showMessageDialog methods. Only used if
+# the developer uses one of the variants that doesn't take a title.
+OptionPane.messageDialog.titleAndMnemonic=\u8A0A\u606F
+
+############ Printing Dialog Strings ############
+PrintingDialog.titleProgress.textAndMnemonic=\u5217\u5370
+PrintingDialog.titleAborting.textAndMnemonic=\u5217\u5370 (\u4E2D\u6B62)
+
+PrintingDialog.contentInitial.textAndMnemonic=\u6B63\u5728\u5217\u5370...
+
+# The following string will be formatted by a MessageFormat
+# and {0} will be replaced by page number being printed
+PrintingDialog.contentProgress.textAndMnemonic=\u5DF2\u5217\u5370\u7684\u9801\u9762 {0}...
+
+PrintingDialog.contentAborting.textAndMnemonic=\u6B63\u5728\u4E2D\u6B62\u5217\u5370...
+
+PrintingDialog.abortButton.textAndMnemonic=\u4E2D\u6B62(&A)
+PrintingDialog.abortButtonToolTip.textAndMnemonic=\u4E2D\u6B62\u5217\u5370
+
+############ Internal Frame Strings ############
+InternalFrame.iconButtonToolTip=\u6700\u5C0F\u5316
+InternalFrame.maxButtonToolTip=\u6700\u5927\u5316
+InternalFrame.restoreButtonToolTip=\u5FA9\u539F
+InternalFrame.closeButtonToolTip=\u95DC\u9589
+
+############ Internal Frame Title Pane Strings ############
+InternalFrameTitlePane.restoreButton.textAndMnemonic=\u5FA9\u539F
+InternalFrameTitlePane.moveButton.textAndMnemonic=\u79FB\u52D5
+InternalFrameTitlePane.sizeButton.textAndMnemonic=\u5927\u5C0F
+InternalFrameTitlePane.minimizeButton.textAndMnemonic=\u6700\u5C0F\u5316
+InternalFrameTitlePane.maximizeButton.textAndMnemonic=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButton.textAndMnemonic=\u95DC\u9589
+
+############ Text strings #############
+# Used for html forms
+FormView.submitButton.textAndMnemonic=\u9001\u51FA\u67E5\u8A62
+FormView.resetButton.textAndMnemonic=\u91CD\u8A2D
+FormView.browseFileButton.textAndMnemonic=\u700F\u89BD...
+
+############ Abstract Document Strings ############
+AbstractDocument.styleChange.textAndMnemonic=\u6A23\u5F0F\u8B8A\u66F4
+AbstractDocument.addition.textAndMnemonic=\u9644\u52A0
+AbstractDocument.deletion.textAndMnemonic=\u522A\u9664
+AbstractDocument.undo.textAndMnemonic=\u9084\u539F
+AbstractDocument.redo.textAndMnemonic=\u91CD\u505A
+
+############ Abstract Button Strings ############
+AbstractButton.click.textAndMnemonic=\u6309\u4E00\u4E0B
+
+############ Abstract Undoable Edit Strings ############
+AbstractUndoableEdit.undo.textAndMnemonic=\u9084\u539F
+AbstractUndoableEdit.redo.textAndMnemonic=\u91CD\u505A
+
+############ Combo Box Strings ############
+ComboBox.togglePopup.textAndMnemonic=\u5207\u63DB\u5373\u73FE\u5F0F\u8996\u7A97
+
+############ Progress Monitor Strings ############
+ProgressMonitor.progress.textAndMnemonic=\u9032\u5EA6...
+
+############ Split Pane Strings ############
+SplitPane.leftButton.textAndMnemonic=\u5DE6\u6309\u9215
+SplitPane.rightButton.textAndMnemonic=\u53F3\u6309\u9215
+# Used for Isindex
+IsindexView.prompt=\u9019\u662F\u4E00\u500B\u53EF\u641C\u5C0B\u7684\u7D22\u5F15\u3002\u8F38\u5165\u641C\u5C0B\u95DC\u9375\u5B57:
+
+############ InternalFrameTitlePane Strings ############
+InternalFrameTitlePane.iconifyButtonAccessibleName=\u5716\u793A\u5316
+InternalFrameTitlePane.maximizeButtonAccessibleName=\u6700\u5927\u5316
+InternalFrameTitlePane.closeButtonAccessibleName=\u95DC\u9589
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,60 +1,51 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Look In:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Save In:
-FileChooser.fileNameLabelText=File Name:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Folder name:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Files of Type:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Up One Level
-FileChooser.upFolderAccessibleName=Up
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Create New Folder
-FileChooser.newFolderAccessibleName=New Folder
-FileChooser.newFolderActionLabelText=New Folder
-FileChooser.listViewButtonToolTipText=List
-FileChooser.listViewButtonAccessibleName=List
-FileChooser.listViewActionLabelText=List
-FileChooser.detailsViewButtonToolTipText=Details
-FileChooser.detailsViewButtonAccessibleName=Details
-FileChooser.detailsViewActionLabelText=Details
-FileChooser.refreshActionLabelText=Refresh
-FileChooser.viewMenuLabelText=View
-FileChooser.fileNameHeaderText=Name
-FileChooser.fileSizeHeaderText=Size
-FileChooser.fileTypeHeaderText=Type
-FileChooser.fileDateHeaderText=Modified
-FileChooser.fileAttrHeaderText=Attributes
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Restore
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=Minimize
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=Maximize
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=Close
-MetalTitlePane.closeMnemonic=67
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Look &In:
+FileChooser.saveInLabel.textAndMnemonic=Save In:
+FileChooser.fileNameLabel.textAndMnemonic=File &Name:
+FileChooser.folderNameLabel.textAndMnemonic=Folder &name:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Files of &Type:
+FileChooser.upFolderToolTip.textAndMnemonic=Up One Level
+FileChooser.upFolderAccessibleName=Up
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Create New Folder
+FileChooser.newFolderAccessibleName=New Folder
+FileChooser.newFolderActionLabel.textAndMnemonic=New Folder
+FileChooser.listViewButtonToolTip.textAndMnemonic=List
+FileChooser.listViewButtonAccessibleName=List
+FileChooser.listViewActionLabel.textAndMnemonic=List
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Details
+FileChooser.detailsViewButtonAccessibleName=Details
+FileChooser.detailsViewActionLabel.textAndMnemonic=Details
+FileChooser.refreshActionLabel.textAndMnemonic=Refresh
+FileChooser.viewMenuLabel.textAndMnemonic=View
+FileChooser.fileNameHeader.textAndMnemonic=Name
+FileChooser.fileSizeHeader.textAndMnemonic=Size
+FileChooser.fileTypeHeader.textAndMnemonic=Type
+FileChooser.fileDateHeader.textAndMnemonic=Modified
+FileChooser.fileAttrHeader.textAndMnemonic=Attributes
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Restore
+MetalTitlePane.iconify.titleAndMnemonic=Minimiz&e
+MetalTitlePane.maximize.titleAndMnemonic=Ma&ximize
+MetalTitlePane.close.titleAndMnemonic=&Close
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_de.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_de.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Suchen in:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Speichern in:
-FileChooser.fileNameLabelText=Dateiname:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Ordnername:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Dateityp:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Eine Ebene h\u00F6her
-FileChooser.upFolderAccessibleName=Nach oben
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Neuen Ordner erstellen
-FileChooser.newFolderAccessibleName=Neuer Ordner
-FileChooser.newFolderActionLabelText=Neuer Ordner
-FileChooser.listViewButtonToolTipText=Liste
-FileChooser.listViewButtonAccessibleName=Liste
-FileChooser.listViewActionLabelText=Liste
-FileChooser.detailsViewButtonToolTipText=Details
-FileChooser.detailsViewButtonAccessibleName=Details
-FileChooser.detailsViewActionLabelText=Details
-FileChooser.refreshActionLabelText=Aktualisieren
-FileChooser.viewMenuLabelText=Ansicht
-FileChooser.fileNameHeaderText=Name
-FileChooser.fileSizeHeaderText=Gr\u00F6\u00DFe
-FileChooser.fileTypeHeaderText=Typ
-FileChooser.fileDateHeaderText=Ge\u00E4ndert
-FileChooser.fileAttrHeaderText=Attribute
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Wiederherstellen
-MetalTitlePane.restoreMnemonic=87
-MetalTitlePane.iconifyTitle=Minimieren
-MetalTitlePane.iconifyMnemonic=82
-MetalTitlePane.maximizeTitle=Maximieren
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=Schlie\u00DFen
-MetalTitlePane.closeMnemonic=83
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Suchen &in:
+FileChooser.saveInLabel.textAndMnemonic=Speichern in:
+FileChooser.fileNameLabel.textAndMnemonic=Datei&name:
+FileChooser.folderNameLabel.textAndMnemonic=Ord&nername:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Da&teityp:
+FileChooser.upFolderToolTip.textAndMnemonic=Eine Ebene h\u00F6her
+FileChooser.upFolderAccessibleName=Nach oben
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Neuen Ordner erstellen
+FileChooser.newFolderAccessibleName=Neuer Ordner
+FileChooser.newFolderActionLabel.textAndMnemonic=Neuer Ordner
+FileChooser.listViewButtonToolTip.textAndMnemonic=Liste
+FileChooser.listViewButtonAccessibleName=Liste
+FileChooser.listViewActionLabel.textAndMnemonic=Liste
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Details
+FileChooser.detailsViewButtonAccessibleName=Details
+FileChooser.detailsViewActionLabel.textAndMnemonic=Details
+FileChooser.refreshActionLabel.textAndMnemonic=Aktualisieren
+FileChooser.viewMenuLabel.textAndMnemonic=Ansicht
+FileChooser.fileNameHeader.textAndMnemonic=Name
+FileChooser.fileSizeHeader.textAndMnemonic=Gr\u00F6\u00DFe
+FileChooser.fileTypeHeader.textAndMnemonic=Typ
+FileChooser.fileDateHeader.textAndMnemonic=Ge\u00E4ndert
+FileChooser.fileAttrHeader.textAndMnemonic=Attribute
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Wiederherstellen
+MetalTitlePane.iconify.titleAndMnemonic=Minimie&ren
+MetalTitlePane.maximize.titleAndMnemonic=Ma&ximieren
+MetalTitlePane.close.titleAndMnemonic=Schlie\u00DFen(&S)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_es.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_es.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Buscar en:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Guardar en:
-FileChooser.fileNameLabelText=Nombre de Archivo:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nombre de la Carpeta:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Archivos de Tipo:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Subir un Nivel
-FileChooser.upFolderAccessibleName=Arriba
-FileChooser.homeFolderToolTipText=Inicio
-FileChooser.homeFolderAccessibleName=Inicio
-FileChooser.newFolderToolTipText=Crear Nueva Carpeta
-FileChooser.newFolderAccessibleName=Nueva Carpeta
-FileChooser.newFolderActionLabelText=Nueva Carpeta
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detalles
-FileChooser.detailsViewButtonAccessibleName=Detalles
-FileChooser.detailsViewActionLabelText=Detalles
-FileChooser.refreshActionLabelText=Refrescar
-FileChooser.viewMenuLabelText=Ver
-FileChooser.fileNameHeaderText=Nombre
-FileChooser.fileSizeHeaderText=Tama\u00F1o
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificado
-FileChooser.fileAttrHeaderText=Atributos
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Restaurar
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=Minimizar
-MetalTitlePane.iconifyMnemonic=90
-MetalTitlePane.maximizeTitle=Maximizar
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=Cerrar
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Buscar en(&I):
+FileChooser.saveInLabel.textAndMnemonic=Guardar en:
+FileChooser.fileNameLabel.textAndMnemonic=&Nombre de Archivo:
+FileChooser.folderNameLabel.textAndMnemonic=&Nombre de la Carpeta:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Archivos de &Tipo:
+FileChooser.upFolderToolTip.textAndMnemonic=Subir un Nivel
+FileChooser.upFolderAccessibleName=Arriba
+FileChooser.homeFolderToolTip.textAndMnemonic=Inicio
+FileChooser.homeFolderAccessibleName=Inicio
+FileChooser.newFolderToolTip.textAndMnemonic=Crear Nueva Carpeta
+FileChooser.newFolderAccessibleName=Nueva Carpeta
+FileChooser.newFolderActionLabel.textAndMnemonic=Nueva Carpeta
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detalles
+FileChooser.detailsViewButtonAccessibleName=Detalles
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detalles
+FileChooser.refreshActionLabel.textAndMnemonic=Refrescar
+FileChooser.viewMenuLabel.textAndMnemonic=Ver
+FileChooser.fileNameHeader.textAndMnemonic=Nombre
+FileChooser.fileSizeHeader.textAndMnemonic=Tama\u00F1o
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificado
+FileChooser.fileAttrHeader.textAndMnemonic=Atributos
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Restaurar
+MetalTitlePane.iconify.titleAndMnemonic=Minimi&zar
+MetalTitlePane.maximize.titleAndMnemonic=Ma&ximizar
+MetalTitlePane.close.titleAndMnemonic=&Cerrar
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Rechercher dans :
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Enregistrer dans :
-FileChooser.fileNameLabelText=Nom du fichier :
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nom du dossier :
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Fichiers de type :
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Remonte d'un niveau.
-FileChooser.upFolderAccessibleName=Monter
-FileChooser.homeFolderToolTipText=R\u00E9pertoire d'origine
-FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
-FileChooser.newFolderToolTipText=Cr\u00E9e un dossier.
-FileChooser.newFolderAccessibleName=Nouveau dossier
-FileChooser.newFolderActionLabelText=Nouveau dossier
-FileChooser.listViewButtonToolTipText=Liste
-FileChooser.listViewButtonAccessibleName=Liste
-FileChooser.listViewActionLabelText=Liste
-FileChooser.detailsViewButtonToolTipText=D\u00E9tails
-FileChooser.detailsViewButtonAccessibleName=D\u00E9tails
-FileChooser.detailsViewActionLabelText=D\u00E9tails
-FileChooser.refreshActionLabelText=Actualiser
-FileChooser.viewMenuLabelText=Affichage
-FileChooser.fileNameHeaderText=Nom
-FileChooser.fileSizeHeaderText=Taille
-FileChooser.fileTypeHeaderText=Type
-FileChooser.fileDateHeaderText=Modifi\u00E9
-FileChooser.fileAttrHeaderText=Attributs
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Restaurer
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=R\u00E9duire
-MetalTitlePane.iconifyMnemonic=68
-MetalTitlePane.maximizeTitle=Agrandir
-MetalTitlePane.maximizeMnemonic=65
-MetalTitlePane.closeTitle=Fermer
-MetalTitlePane.closeMnemonic=70
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Rechercher dans (&I):
+FileChooser.saveInLabel.textAndMnemonic=Enregistrer dans :
+FileChooser.fileNameLabel.textAndMnemonic=&Nom du fichier :
+FileChooser.folderNameLabel.textAndMnemonic=&Nom du dossier :
+FileChooser.filesOfTypeLabel.textAndMnemonic=Fichiers de &type :
+FileChooser.upFolderToolTip.textAndMnemonic=Remonte d'un niveau.
+FileChooser.upFolderAccessibleName=Monter
+FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire d'origine
+FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
+FileChooser.newFolderToolTip.textAndMnemonic=Cr\u00E9e un dossier.
+FileChooser.newFolderAccessibleName=Nouveau dossier
+FileChooser.newFolderActionLabel.textAndMnemonic=Nouveau dossier
+FileChooser.listViewButtonToolTip.textAndMnemonic=Liste
+FileChooser.listViewButtonAccessibleName=Liste
+FileChooser.listViewActionLabel.textAndMnemonic=Liste
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=D\u00E9tails
+FileChooser.detailsViewButtonAccessibleName=D\u00E9tails
+FileChooser.detailsViewActionLabel.textAndMnemonic=D\u00E9tails
+FileChooser.refreshActionLabel.textAndMnemonic=Actualiser
+FileChooser.viewMenuLabel.textAndMnemonic=Affichage
+FileChooser.fileNameHeader.textAndMnemonic=Nom
+FileChooser.fileSizeHeader.textAndMnemonic=Taille
+FileChooser.fileTypeHeader.textAndMnemonic=Type
+FileChooser.fileDateHeader.textAndMnemonic=Modifi\u00E9
+FileChooser.fileAttrHeader.textAndMnemonic=Attributs
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Restaurer
+MetalTitlePane.iconify.titleAndMnemonic=R\u00E9duire(&D)
+MetalTitlePane.maximize.titleAndMnemonic=&Agrandir
+MetalTitlePane.close.titleAndMnemonic=&Fermer
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_it.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_it.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Cerca in:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Salva in:
-FileChooser.fileNameLabelText=Nome file:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nome della cartella:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Tipo file:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Cartella superiore
-FileChooser.upFolderAccessibleName=Superiore
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Crea nuova cartella
-FileChooser.newFolderAccessibleName=Nuova cartella
-FileChooser.newFolderActionLabelText=Nuova cartella
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Dettagli
-FileChooser.detailsViewButtonAccessibleName=Dettagli
-FileChooser.detailsViewActionLabelText=Dettagli
-FileChooser.refreshActionLabelText=Aggiorna
-FileChooser.viewMenuLabelText=Visualizza
-FileChooser.fileNameHeaderText=Nome
-FileChooser.fileSizeHeaderText=Dimensioni
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificato
-FileChooser.fileAttrHeaderText=Attributi
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Ripristina
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=Riduci a icona
-MetalTitlePane.iconifyMnemonic=85
-MetalTitlePane.maximizeTitle=Ingrandisci
-MetalTitlePane.maximizeMnemonic=71
-MetalTitlePane.closeTitle=Chiudi
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Cerca &in:
+FileChooser.saveInLabel.textAndMnemonic=Salva in:
+FileChooser.fileNameLabel.textAndMnemonic=&Nome file:
+FileChooser.folderNameLabel.textAndMnemonic=&Nome della cartella:
+FileChooser.filesOfTypeLabel.textAndMnemonic=&Tipo file:
+FileChooser.upFolderToolTip.textAndMnemonic=Cartella superiore
+FileChooser.upFolderAccessibleName=Superiore
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Crea nuova cartella
+FileChooser.newFolderAccessibleName=Nuova cartella
+FileChooser.newFolderActionLabel.textAndMnemonic=Nuova cartella
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Dettagli
+FileChooser.detailsViewButtonAccessibleName=Dettagli
+FileChooser.detailsViewActionLabel.textAndMnemonic=Dettagli
+FileChooser.refreshActionLabel.textAndMnemonic=Aggiorna
+FileChooser.viewMenuLabel.textAndMnemonic=Visualizza
+FileChooser.fileNameHeader.textAndMnemonic=Nome
+FileChooser.fileSizeHeader.textAndMnemonic=Dimensioni
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificato
+FileChooser.fileAttrHeader.textAndMnemonic=Attributi
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Ripristina
+MetalTitlePane.iconify.titleAndMnemonic=Rid&uci a icona
+MetalTitlePane.maximize.titleAndMnemonic=In&grandisci
+MetalTitlePane.close.titleAndMnemonic=&Chiudi
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ja.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ja.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u53C2\u7167:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u4FDD\u5B58:
-FileChooser.fileNameLabelText=\u30D5\u30A1\u30A4\u30EB\u540D:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u30D5\u30A9\u30EB\u30C0\u540D:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u30D5\u30A1\u30A4\u30EB\u306E\u30BF\u30A4\u30D7:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=1\u30EC\u30D9\u30EB\u4E0A\u3078
-FileChooser.upFolderAccessibleName=\u4E0A\u3078
-FileChooser.homeFolderToolTipText=\u30DB\u30FC\u30E0
-FileChooser.homeFolderAccessibleName=\u30DB\u30FC\u30E0
-FileChooser.newFolderToolTipText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210
-FileChooser.newFolderAccessibleName=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.newFolderActionLabelText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.listViewButtonToolTipText=\u30EA\u30B9\u30C8
-FileChooser.listViewButtonAccessibleName=\u30EA\u30B9\u30C8
-FileChooser.listViewActionLabelText=\u30EA\u30B9\u30C8
-FileChooser.detailsViewButtonToolTipText=\u8A73\u7D30
-FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30
-FileChooser.detailsViewActionLabelText=\u8A73\u7D30
-FileChooser.refreshActionLabelText=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5
-FileChooser.viewMenuLabelText=\u8868\u793A
-FileChooser.fileNameHeaderText=\u540D\u524D
-FileChooser.fileSizeHeaderText=\u30B5\u30A4\u30BA
-FileChooser.fileTypeHeaderText=\u30BF\u30A4\u30D7
-FileChooser.fileDateHeaderText=\u4FEE\u6B63\u65E5
-FileChooser.fileAttrHeaderText=\u5C5E\u6027
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=\u5FA9\u5143(R)
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=\u6700\u5C0F\u5316(E)
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=\u6700\u5927\u5316(X)
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=\u9589\u3058\u308B(C)
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u53C2\u7167(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u4FDD\u5B58:
+FileChooser.fileNameLabel.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u540D(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0\u540D(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u306E\u30BF\u30A4\u30D7(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=1\u30EC\u30D9\u30EB\u4E0A\u3078
+FileChooser.upFolderAccessibleName=\u4E0A\u3078
+FileChooser.homeFolderToolTip.textAndMnemonic=\u30DB\u30FC\u30E0
+FileChooser.homeFolderAccessibleName=\u30DB\u30FC\u30E0
+FileChooser.newFolderToolTip.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210
+FileChooser.newFolderAccessibleName=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u30EA\u30B9\u30C8
+FileChooser.listViewButtonAccessibleName=\u30EA\u30B9\u30C8
+FileChooser.listViewActionLabel.textAndMnemonic=\u30EA\u30B9\u30C8
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8A73\u7D30
+FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8A73\u7D30
+FileChooser.refreshActionLabel.textAndMnemonic=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5
+FileChooser.viewMenuLabel.textAndMnemonic=\u8868\u793A
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u524D
+FileChooser.fileSizeHeader.textAndMnemonic=\u30B5\u30A4\u30BA
+FileChooser.fileTypeHeader.textAndMnemonic=\u30BF\u30A4\u30D7
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6B63\u65E5
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C5E\u6027
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=\u5FA9\u5143(&R)
+MetalTitlePane.iconify.titleAndMnemonic=\u6700\u5C0F\u5316(&E)
+MetalTitlePane.maximize.titleAndMnemonic=\u6700\u5927\u5316(&X)
+MetalTitlePane.close.titleAndMnemonic=\u9589\u3058\u308B(&C)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\uAC80\uC0C9 \uC704\uCE58:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\uC800\uC7A5 \uC704\uCE58:
-FileChooser.fileNameLabelText=\uD30C\uC77C \uC774\uB984:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\uD3F4\uB354 \uC774\uB984:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\uD30C\uC77C \uC720\uD615:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\uD55C \uB808\uBCA8 \uC704\uB85C
-FileChooser.upFolderAccessibleName=\uC704\uB85C
-FileChooser.homeFolderToolTipText=\uD648
-FileChooser.homeFolderAccessibleName=\uD648
-FileChooser.newFolderToolTipText=\uC0C8 \uD3F4\uB354 \uC0DD\uC131
-FileChooser.newFolderAccessibleName=\uC0C8 \uD3F4\uB354
-FileChooser.newFolderActionLabelText=\uC0C8 \uD3F4\uB354
-FileChooser.listViewButtonToolTipText=\uBAA9\uB85D
-FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
-FileChooser.listViewActionLabelText=\uBAA9\uB85D
-FileChooser.detailsViewButtonToolTipText=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewActionLabelText=\uC138\uBD80 \uC815\uBCF4
-FileChooser.refreshActionLabelText=\uC0C8\uB85C \uACE0\uCE68
-FileChooser.viewMenuLabelText=\uBCF4\uAE30
-FileChooser.fileNameHeaderText=\uC774\uB984
-FileChooser.fileSizeHeaderText=\uD06C\uAE30
-FileChooser.fileTypeHeaderText=\uC720\uD615
-FileChooser.fileDateHeaderText=\uC218\uC815 \uB0A0\uC9DC
-FileChooser.fileAttrHeaderText=\uC18D\uC131
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=\uBCF5\uC6D0(R)
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=\uCD5C\uC18C\uD654(E)
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=\uCD5C\uB300\uD654(X)
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=\uB2EB\uAE30(C)
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\uAC80\uC0C9 \uC704\uCE58(&I):
+FileChooser.saveInLabel.textAndMnemonic=\uC800\uC7A5 \uC704\uCE58:
+FileChooser.fileNameLabel.textAndMnemonic=\uD30C\uC77C \uC774\uB984(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\uD3F4\uB354 \uC774\uB984(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\uD30C\uC77C \uC720\uD615(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\uD55C \uB808\uBCA8 \uC704\uB85C
+FileChooser.upFolderAccessibleName=\uC704\uB85C
+FileChooser.homeFolderToolTip.textAndMnemonic=\uD648
+FileChooser.homeFolderAccessibleName=\uD648
+FileChooser.newFolderToolTip.textAndMnemonic=\uC0C8 \uD3F4\uB354 \uC0DD\uC131
+FileChooser.newFolderAccessibleName=\uC0C8 \uD3F4\uB354
+FileChooser.newFolderActionLabel.textAndMnemonic=\uC0C8 \uD3F4\uB354
+FileChooser.listViewButtonToolTip.textAndMnemonic=\uBAA9\uB85D
+FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
+FileChooser.listViewActionLabel.textAndMnemonic=\uBAA9\uB85D
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.refreshActionLabel.textAndMnemonic=\uC0C8\uB85C \uACE0\uCE68
+FileChooser.viewMenuLabel.textAndMnemonic=\uBCF4\uAE30
+FileChooser.fileNameHeader.textAndMnemonic=\uC774\uB984
+FileChooser.fileSizeHeader.textAndMnemonic=\uD06C\uAE30
+FileChooser.fileTypeHeader.textAndMnemonic=\uC720\uD615
+FileChooser.fileDateHeader.textAndMnemonic=\uC218\uC815 \uB0A0\uC9DC
+FileChooser.fileAttrHeader.textAndMnemonic=\uC18D\uC131
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=\uBCF5\uC6D0(&R)
+MetalTitlePane.iconify.titleAndMnemonic=\uCD5C\uC18C\uD654(&E)
+MetalTitlePane.maximize.titleAndMnemonic=\uCD5C\uB300\uD654(&X)
+MetalTitlePane.close.titleAndMnemonic=\uB2EB\uAE30(&C)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_pt_BR.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_pt_BR.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Consultar Em:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Salvar Em:
-FileChooser.fileNameLabelText=Nome do Arquivo:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nome da pasta:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Arquivos do Tipo:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Um N\u00EDvel Acima
-FileChooser.upFolderAccessibleName=Acima
-FileChooser.homeFolderToolTipText=In\u00EDcio
-FileChooser.homeFolderAccessibleName=In\u00EDcio
-FileChooser.newFolderToolTipText=Criar Nova Pasta
-FileChooser.newFolderAccessibleName=Nova Pasta
-FileChooser.newFolderActionLabelText=Nova Pasta
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detalhes
-FileChooser.detailsViewButtonAccessibleName=Detalhes
-FileChooser.detailsViewActionLabelText=Detalhes
-FileChooser.refreshActionLabelText=Atualizar
-FileChooser.viewMenuLabelText=Exibir
-FileChooser.fileNameHeaderText=Nome
-FileChooser.fileSizeHeaderText=Tamanho
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificado
-FileChooser.fileAttrHeaderText=Atributos
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=Restaurar
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=Minimizar
-MetalTitlePane.iconifyMnemonic=77
-MetalTitlePane.maximizeTitle=Maximizar
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=Fechar
-MetalTitlePane.closeMnemonic=70
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Consultar Em(&I):
+FileChooser.saveInLabel.textAndMnemonic=Salvar Em:
+FileChooser.fileNameLabel.textAndMnemonic=&Nome do Arquivo:
+FileChooser.folderNameLabel.textAndMnemonic=&Nome da pasta:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Arquivos do &Tipo:
+FileChooser.upFolderToolTip.textAndMnemonic=Um N\u00EDvel Acima
+FileChooser.upFolderAccessibleName=Acima
+FileChooser.homeFolderToolTip.textAndMnemonic=In\u00EDcio
+FileChooser.homeFolderAccessibleName=In\u00EDcio
+FileChooser.newFolderToolTip.textAndMnemonic=Criar Nova Pasta
+FileChooser.newFolderAccessibleName=Nova Pasta
+FileChooser.newFolderActionLabel.textAndMnemonic=Nova Pasta
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detalhes
+FileChooser.detailsViewButtonAccessibleName=Detalhes
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detalhes
+FileChooser.refreshActionLabel.textAndMnemonic=Atualizar
+FileChooser.viewMenuLabel.textAndMnemonic=Exibir
+FileChooser.fileNameHeader.textAndMnemonic=Nome
+FileChooser.fileSizeHeader.textAndMnemonic=Tamanho
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificado
+FileChooser.fileAttrHeader.textAndMnemonic=Atributos
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=&Restaurar
+MetalTitlePane.iconify.titleAndMnemonic=&Minimizar
+MetalTitlePane.maximize.titleAndMnemonic=Ma&ximizar
+MetalTitlePane.close.titleAndMnemonic=&Fechar
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Leta i:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Spara i:
-FileChooser.fileNameLabelText=Filnamn:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Mapp:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Filformat:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Upp en niv\u00E5
-FileChooser.upFolderAccessibleName=Upp
-FileChooser.homeFolderToolTipText=Hem
-FileChooser.homeFolderAccessibleName=Hem
-FileChooser.newFolderToolTipText=Skapa ny mapp
-FileChooser.newFolderAccessibleName=Ny mapp
-FileChooser.newFolderActionLabelText=Ny mapp
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detaljer
-FileChooser.detailsViewButtonAccessibleName=Detaljer
-FileChooser.detailsViewActionLabelText=Detaljer
-FileChooser.refreshActionLabelText=F\u00F6rnya
-FileChooser.viewMenuLabelText=Vy
-FileChooser.fileNameHeaderText=Namn
-FileChooser.fileSizeHeaderText=Storlek
-FileChooser.fileTypeHeaderText=Typ
-FileChooser.fileDateHeaderText=\u00C4ndrad
-FileChooser.fileAttrHeaderText=Attribut
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=\u00C5terst\u00E4ll
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=Minimera
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=Maximera
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=St\u00E4ng
-MetalTitlePane.closeMnemonic=83
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Leta &i:
+FileChooser.saveInLabel.textAndMnemonic=Spara i:
+FileChooser.fileNameLabel.textAndMnemonic=Fil&namn:
+FileChooser.folderNameLabel.textAndMnemonic=Mapp(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=Filforma&t:
+FileChooser.upFolderToolTip.textAndMnemonic=Upp en niv\u00E5
+FileChooser.upFolderAccessibleName=Upp
+FileChooser.homeFolderToolTip.textAndMnemonic=Hem
+FileChooser.homeFolderAccessibleName=Hem
+FileChooser.newFolderToolTip.textAndMnemonic=Skapa ny mapp
+FileChooser.newFolderAccessibleName=Ny mapp
+FileChooser.newFolderActionLabel.textAndMnemonic=Ny mapp
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detaljer
+FileChooser.detailsViewButtonAccessibleName=Detaljer
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detaljer
+FileChooser.refreshActionLabel.textAndMnemonic=F\u00F6rnya
+FileChooser.viewMenuLabel.textAndMnemonic=Vy
+FileChooser.fileNameHeader.textAndMnemonic=Namn
+FileChooser.fileSizeHeader.textAndMnemonic=Storlek
+FileChooser.fileTypeHeader.textAndMnemonic=Typ
+FileChooser.fileDateHeader.textAndMnemonic=\u00C4ndrad
+FileChooser.fileAttrHeader.textAndMnemonic=Attribut
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=\u00C5terst\u00E4ll(&R)
+MetalTitlePane.iconify.titleAndMnemonic=Minim&era
+MetalTitlePane.maximize.titleAndMnemonic=Ma&ximera
+MetalTitlePane.close.titleAndMnemonic=St\u00E4ng(&S)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u67E5\u770B:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u4FDD\u5B58:
-FileChooser.fileNameLabelText=\u6587\u4EF6\u540D:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u6587\u4EF6\u5939\u540D:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u6587\u4EF6\u7C7B\u578B:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\u5411\u4E0A\u4E00\u7EA7
-FileChooser.upFolderAccessibleName=\u5411\u4E0A
-FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u5F55
-FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u5F55
-FileChooser.newFolderToolTipText=\u521B\u5EFA\u65B0\u6587\u4EF6\u5939
-FileChooser.newFolderAccessibleName=\u65B0\u5EFA\u6587\u4EF6\u5939
-FileChooser.newFolderActionLabelText=\u65B0\u5EFA\u6587\u4EF6\u5939
-FileChooser.listViewButtonToolTipText=\u5217\u8868
-FileChooser.listViewButtonAccessibleName=\u5217\u8868
-FileChooser.listViewActionLabelText=\u5217\u8868
-FileChooser.detailsViewButtonToolTipText=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.detailsViewButtonAccessibleName=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.detailsViewActionLabelText=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.refreshActionLabelText=\u5237\u65B0
-FileChooser.viewMenuLabelText=\u89C6\u56FE
-FileChooser.fileNameHeaderText=\u540D\u79F0
-FileChooser.fileSizeHeaderText=\u5927\u5C0F
-FileChooser.fileTypeHeaderText=\u7C7B\u578B
-FileChooser.fileDateHeaderText=\u4FEE\u6539\u65E5\u671F
-FileChooser.fileAttrHeaderText=\u5C5E\u6027
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=\u8FD8\u539F(R)
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=\u6700\u5C0F\u5316(E)
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=\u6700\u5927\u5316(X)
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=\u5173\u95ED(C)
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u67E5\u770B(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u4FDD\u5B58:
+FileChooser.fileNameLabel.textAndMnemonic=\u6587\u4EF6\u540D(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u6587\u4EF6\u5939\u540D(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u6587\u4EF6\u7C7B\u578B(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\u5411\u4E0A\u4E00\u7EA7
+FileChooser.upFolderAccessibleName=\u5411\u4E0A
+FileChooser.homeFolderToolTip.textAndMnemonic=\u4E3B\u76EE\u5F55
+FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u5F55
+FileChooser.newFolderToolTip.textAndMnemonic=\u521B\u5EFA\u65B0\u6587\u4EF6\u5939
+FileChooser.newFolderAccessibleName=\u65B0\u5EFA\u6587\u4EF6\u5939
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u5EFA\u6587\u4EF6\u5939
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u5217\u8868
+FileChooser.listViewButtonAccessibleName=\u5217\u8868
+FileChooser.listViewActionLabel.textAndMnemonic=\u5217\u8868
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.detailsViewButtonAccessibleName=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.refreshActionLabel.textAndMnemonic=\u5237\u65B0
+FileChooser.viewMenuLabel.textAndMnemonic=\u89C6\u56FE
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u79F0
+FileChooser.fileSizeHeader.textAndMnemonic=\u5927\u5C0F
+FileChooser.fileTypeHeader.textAndMnemonic=\u7C7B\u578B
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6539\u65E5\u671F
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C5E\u6027
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=\u8FD8\u539F(&R)
+MetalTitlePane.iconify.titleAndMnemonic=\u6700\u5C0F\u5316(&E)
+MetalTitlePane.maximize.titleAndMnemonic=\u6700\u5927\u5316(&X)
+MetalTitlePane.close.titleAndMnemonic=\u5173\u95ED(&C)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,61 +1,52 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Metal Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.
-# This may change in future versions of Swing as we improve localization
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u67E5\u8A62:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u5132\u5B58\u65BC:
-FileChooser.fileNameLabelText=\u6A94\u6848\u540D\u7A31:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u8CC7\u6599\u593E\u540D\u7A31:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u6A94\u6848\u985E\u578B:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\u5F80\u4E0A\u4E00\u5C64
-FileChooser.upFolderAccessibleName=\u5F80\u4E0A
-FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u9304
-FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u9304
-FileChooser.newFolderToolTipText=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E
-FileChooser.newFolderAccessibleName=\u65B0\u8CC7\u6599\u593E
-FileChooser.newFolderActionLabelText=\u65B0\u8CC7\u6599\u593E
-FileChooser.listViewButtonToolTipText=\u6E05\u55AE
-FileChooser.listViewButtonAccessibleName=\u6E05\u55AE
-FileChooser.listViewActionLabelText=\u6E05\u55AE
-FileChooser.detailsViewButtonToolTipText=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.detailsViewActionLabelText=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.refreshActionLabelText=\u91CD\u65B0\u6574\u7406
-FileChooser.viewMenuLabelText=\u6AA2\u8996
-FileChooser.fileNameHeaderText=\u540D\u7A31
-FileChooser.fileSizeHeaderText=\u5927\u5C0F
-FileChooser.fileTypeHeaderText=\u985E\u578B
-FileChooser.fileDateHeaderText=\u4FEE\u6539\u65E5\u671F
-FileChooser.fileAttrHeaderText=\u5C6C\u6027
-
-############ Used by MetalTitlePane if rendering window decorations############
-# All mnemonics are KeyEvent.VK_XXX as integers
-MetalTitlePane.restoreTitle=\u56DE\u5FA9(R)
-MetalTitlePane.restoreMnemonic=82
-MetalTitlePane.iconifyTitle=\u6700\u5C0F\u5316(E)
-MetalTitlePane.iconifyMnemonic=69
-MetalTitlePane.maximizeTitle=\u6700\u5927\u5316(X)
-MetalTitlePane.maximizeMnemonic=88
-MetalTitlePane.closeTitle=\u95DC\u9589(C)
-MetalTitlePane.closeMnemonic=67
-
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Metal Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u67E5\u8A62(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u5132\u5B58\u65BC:
+FileChooser.fileNameLabel.textAndMnemonic=\u6A94\u6848\u540D\u7A31(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u8CC7\u6599\u593E\u540D\u7A31(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u6A94\u6848\u985E\u578B(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\u5F80\u4E0A\u4E00\u5C64
+FileChooser.upFolderAccessibleName=\u5F80\u4E0A
+FileChooser.homeFolderToolTip.textAndMnemonic=\u4E3B\u76EE\u9304
+FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u9304
+FileChooser.newFolderToolTip.textAndMnemonic=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E
+FileChooser.newFolderAccessibleName=\u65B0\u8CC7\u6599\u593E
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u8CC7\u6599\u593E
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u6E05\u55AE
+FileChooser.listViewButtonAccessibleName=\u6E05\u55AE
+FileChooser.listViewActionLabel.textAndMnemonic=\u6E05\u55AE
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.refreshActionLabel.textAndMnemonic=\u91CD\u65B0\u6574\u7406
+FileChooser.viewMenuLabel.textAndMnemonic=\u6AA2\u8996
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u7A31
+FileChooser.fileSizeHeader.textAndMnemonic=\u5927\u5C0F
+FileChooser.fileTypeHeader.textAndMnemonic=\u985E\u578B
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6539\u65E5\u671F
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C6C\u6027
+
+############ Used by MetalTitlePane if rendering window decorations############
+MetalTitlePane.restore.titleAndMnemonic=\u56DE\u5FA9(&R)
+MetalTitlePane.iconify.titleAndMnemonic=\u6700\u5C0F\u5316(&E)
+MetalTitlePane.maximize.titleAndMnemonic=\u6700\u5927\u5316(&X)
+MetalTitlePane.close.titleAndMnemonic=\u95DC\u9589(&C)
+
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Look In:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Save In:
-FileChooser.fileNameLabelText=File Name:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Folder Name:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Files of Type:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Up One Level
-FileChooser.upFolderAccessibleName=Up
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Create New Folder
-FileChooser.newFolderAccessibleName=New Folder
-FileChooser.newFolderActionLabelText=New Folder
-FileChooser.listViewButtonToolTipText=List
-FileChooser.listViewButtonAccessibleName=List
-FileChooser.listViewActionLabelText=List
-FileChooser.detailsViewButtonToolTipText=Details
-FileChooser.detailsViewButtonAccessibleName=Details
-FileChooser.detailsViewActionLabelText=Details
-FileChooser.refreshActionLabelText=Refresh
-FileChooser.viewMenuLabelText=View
-FileChooser.fileNameHeaderText=Name
-FileChooser.fileSizeHeaderText=Size
-FileChooser.fileTypeHeaderText=Type
-FileChooser.fileDateHeaderText=Modified
-FileChooser.fileAttrHeaderText=Attributes
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Look &In:
+FileChooser.saveInLabel.textAndMnemonic=Save In:
+FileChooser.fileNameLabel.textAndMnemonic=File &Name:
+FileChooser.folderNameLabel.textAndMnemonic=Folder &Name:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Files of &Type:
+FileChooser.upFolderToolTip.textAndMnemonic=Up One Level
+FileChooser.upFolderAccessibleName=Up
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Create New Folder
+FileChooser.newFolderAccessibleName=New Folder
+FileChooser.newFolderActionLabel.textAndMnemonic=New Folder
+FileChooser.listViewButtonToolTip.textAndMnemonic=List
+FileChooser.listViewButtonAccessibleName=List
+FileChooser.listViewActionLabel.textAndMnemonic=List
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Details
+FileChooser.detailsViewButtonAccessibleName=Details
+FileChooser.detailsViewActionLabel.textAndMnemonic=Details
+FileChooser.refreshActionLabel.textAndMnemonic=Refresh
+FileChooser.viewMenuLabel.textAndMnemonic=View
+FileChooser.fileNameHeader.textAndMnemonic=Name
+FileChooser.fileSizeHeader.textAndMnemonic=Size
+FileChooser.fileTypeHeader.textAndMnemonic=Type
+FileChooser.fileDateHeader.textAndMnemonic=Modified
+FileChooser.fileAttrHeader.textAndMnemonic=Attributes
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Suchen in:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Speichern in:
-FileChooser.fileNameLabelText=Dateiname:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Ordnername:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Dateityp:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Eine Ebene h\u00F6her
-FileChooser.upFolderAccessibleName=Nach oben
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Neuen Ordner erstellen
-FileChooser.newFolderAccessibleName=Neuer Ordner
-FileChooser.newFolderActionLabelText=Neuer Ordner
-FileChooser.listViewButtonToolTipText=Liste
-FileChooser.listViewButtonAccessibleName=Liste
-FileChooser.listViewActionLabelText=Liste
-FileChooser.detailsViewButtonToolTipText=Details
-FileChooser.detailsViewButtonAccessibleName=Details
-FileChooser.detailsViewActionLabelText=Details
-FileChooser.refreshActionLabelText=Aktualisieren
-FileChooser.viewMenuLabelText=Ansicht
-FileChooser.fileNameHeaderText=Name
-FileChooser.fileSizeHeaderText=Gr\u00F6\u00DFe
-FileChooser.fileTypeHeaderText=Typ
-FileChooser.fileDateHeaderText=Ge\u00E4ndert
-FileChooser.fileAttrHeaderText=Attribute
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Suchen &in:
+FileChooser.saveInLabel.textAndMnemonic=Speichern in:
+FileChooser.fileNameLabel.textAndMnemonic=Datei&name:
+FileChooser.folderNameLabel.textAndMnemonic=Ord&nername:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Da&teityp:
+FileChooser.upFolderToolTip.textAndMnemonic=Eine Ebene h\u00F6her
+FileChooser.upFolderAccessibleName=Nach oben
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Neuen Ordner erstellen
+FileChooser.newFolderAccessibleName=Neuer Ordner
+FileChooser.newFolderActionLabel.textAndMnemonic=Neuer Ordner
+FileChooser.listViewButtonToolTip.textAndMnemonic=Liste
+FileChooser.listViewButtonAccessibleName=Liste
+FileChooser.listViewActionLabel.textAndMnemonic=Liste
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Details
+FileChooser.detailsViewButtonAccessibleName=Details
+FileChooser.detailsViewActionLabel.textAndMnemonic=Details
+FileChooser.refreshActionLabel.textAndMnemonic=Aktualisieren
+FileChooser.viewMenuLabel.textAndMnemonic=Ansicht
+FileChooser.fileNameHeader.textAndMnemonic=Name
+FileChooser.fileSizeHeader.textAndMnemonic=Gr\u00F6\u00DFe
+FileChooser.fileTypeHeader.textAndMnemonic=Typ
+FileChooser.fileDateHeader.textAndMnemonic=Ge\u00E4ndert
+FileChooser.fileAttrHeader.textAndMnemonic=Attribute
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Buscar en:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Guardar en:
-FileChooser.fileNameLabelText=Nombre de Archivo:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nombre de la Carpeta:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Archivos de Tipo:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Subir un Nivel
-FileChooser.upFolderAccessibleName=Arriba
-FileChooser.homeFolderToolTipText=Inicio
-FileChooser.homeFolderAccessibleName=Inicio
-FileChooser.newFolderToolTipText=Crear Nueva Carpeta
-FileChooser.newFolderAccessibleName=Nueva Carpeta
-FileChooser.newFolderActionLabelText=Nueva Carpeta
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detalles
-FileChooser.detailsViewButtonAccessibleName=Detalles
-FileChooser.detailsViewActionLabelText=Detalles
-FileChooser.refreshActionLabelText=Refrescar
-FileChooser.viewMenuLabelText=Ver
-FileChooser.fileNameHeaderText=Nombre
-FileChooser.fileSizeHeaderText=Tama\u00F1o
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificado
-FileChooser.fileAttrHeaderText=Atributos
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Buscar en(&I):
+FileChooser.saveInLabel.textAndMnemonic=Guardar en:
+FileChooser.fileNameLabel.textAndMnemonic=&Nombre de Archivo:
+FileChooser.folderNameLabel.textAndMnemonic=&Nombre de la Carpeta:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Archivos de &Tipo:
+FileChooser.upFolderToolTip.textAndMnemonic=Subir un Nivel
+FileChooser.upFolderAccessibleName=Arriba
+FileChooser.homeFolderToolTip.textAndMnemonic=Inicio
+FileChooser.homeFolderAccessibleName=Inicio
+FileChooser.newFolderToolTip.textAndMnemonic=Crear Nueva Carpeta
+FileChooser.newFolderAccessibleName=Nueva Carpeta
+FileChooser.newFolderActionLabel.textAndMnemonic=Nueva Carpeta
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detalles
+FileChooser.detailsViewButtonAccessibleName=Detalles
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detalles
+FileChooser.refreshActionLabel.textAndMnemonic=Refrescar
+FileChooser.viewMenuLabel.textAndMnemonic=Ver
+FileChooser.fileNameHeader.textAndMnemonic=Nombre
+FileChooser.fileSizeHeader.textAndMnemonic=Tama\u00F1o
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificado
+FileChooser.fileAttrHeader.textAndMnemonic=Atributos
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Rechercher dans :
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Enregistrer dans :
-FileChooser.fileNameLabelText=Nom du fichier :
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nom du dossier :
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Fichiers de type :
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Remonte d'un niveau.
-FileChooser.upFolderAccessibleName=Monter
-FileChooser.homeFolderToolTipText=R\u00E9pertoire d'origine
-FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
-FileChooser.newFolderToolTipText=Cr\u00E9e un dossier.
-FileChooser.newFolderAccessibleName=Nouveau dossier
-FileChooser.newFolderActionLabelText=Nouveau dossier
-FileChooser.listViewButtonToolTipText=Liste
-FileChooser.listViewButtonAccessibleName=Liste
-FileChooser.listViewActionLabelText=Liste
-FileChooser.detailsViewButtonToolTipText=D\u00E9tails
-FileChooser.detailsViewButtonAccessibleName=D\u00E9tails
-FileChooser.detailsViewActionLabelText=D\u00E9tails
-FileChooser.refreshActionLabelText=Actualiser
-FileChooser.viewMenuLabelText=Affichage
-FileChooser.fileNameHeaderText=Nom
-FileChooser.fileSizeHeaderText=Taille
-FileChooser.fileTypeHeaderText=Type
-FileChooser.fileDateHeaderText=Modifi\u00E9
-FileChooser.fileAttrHeaderText=Attributs
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Rechercher dans (&I):
+FileChooser.saveInLabel.textAndMnemonic=Enregistrer dans :
+FileChooser.fileNameLabel.textAndMnemonic=&Nom du fichier :
+FileChooser.folderNameLabel.textAndMnemonic=&Nom du dossier :
+FileChooser.filesOfTypeLabel.textAndMnemonic=Fichiers de &type :
+FileChooser.upFolderToolTip.textAndMnemonic=Remonte d'un niveau.
+FileChooser.upFolderAccessibleName=Monter
+FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire d'origine
+FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
+FileChooser.newFolderToolTip.textAndMnemonic=Cr\u00E9e un dossier.
+FileChooser.newFolderAccessibleName=Nouveau dossier
+FileChooser.newFolderActionLabel.textAndMnemonic=Nouveau dossier
+FileChooser.listViewButtonToolTip.textAndMnemonic=Liste
+FileChooser.listViewButtonAccessibleName=Liste
+FileChooser.listViewActionLabel.textAndMnemonic=Liste
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=D\u00E9tails
+FileChooser.detailsViewButtonAccessibleName=D\u00E9tails
+FileChooser.detailsViewActionLabel.textAndMnemonic=D\u00E9tails
+FileChooser.refreshActionLabel.textAndMnemonic=Actualiser
+FileChooser.viewMenuLabel.textAndMnemonic=Affichage
+FileChooser.fileNameHeader.textAndMnemonic=Nom
+FileChooser.fileSizeHeader.textAndMnemonic=Taille
+FileChooser.fileTypeHeader.textAndMnemonic=Type
+FileChooser.fileDateHeader.textAndMnemonic=Modifi\u00E9
+FileChooser.fileAttrHeader.textAndMnemonic=Attributs
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Cerca in:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Salva in:
-FileChooser.fileNameLabelText=Nome file:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nome della cartella:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Tipo file:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Cartella superiore
-FileChooser.upFolderAccessibleName=Superiore
-FileChooser.homeFolderToolTipText=Home
-FileChooser.homeFolderAccessibleName=Home
-FileChooser.newFolderToolTipText=Crea nuova cartella
-FileChooser.newFolderAccessibleName=Nuova cartella
-FileChooser.newFolderActionLabelText=Nuova cartella
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Dettagli
-FileChooser.detailsViewButtonAccessibleName=Dettagli
-FileChooser.detailsViewActionLabelText=Dettagli
-FileChooser.refreshActionLabelText=Aggiorna
-FileChooser.viewMenuLabelText=Visualizza
-FileChooser.fileNameHeaderText=Nome
-FileChooser.fileSizeHeaderText=Dimensioni
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificato
-FileChooser.fileAttrHeaderText=Attributi
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Cerca &in:
+FileChooser.saveInLabel.textAndMnemonic=Salva in:
+FileChooser.fileNameLabel.textAndMnemonic=&Nome file:
+FileChooser.folderNameLabel.textAndMnemonic=&Nome della cartella:
+FileChooser.filesOfTypeLabel.textAndMnemonic=&Tipo file:
+FileChooser.upFolderToolTip.textAndMnemonic=Cartella superiore
+FileChooser.upFolderAccessibleName=Superiore
+FileChooser.homeFolderToolTip.textAndMnemonic=Home
+FileChooser.homeFolderAccessibleName=Home
+FileChooser.newFolderToolTip.textAndMnemonic=Crea nuova cartella
+FileChooser.newFolderAccessibleName=Nuova cartella
+FileChooser.newFolderActionLabel.textAndMnemonic=Nuova cartella
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Dettagli
+FileChooser.detailsViewButtonAccessibleName=Dettagli
+FileChooser.detailsViewActionLabel.textAndMnemonic=Dettagli
+FileChooser.refreshActionLabel.textAndMnemonic=Aggiorna
+FileChooser.viewMenuLabel.textAndMnemonic=Visualizza
+FileChooser.fileNameHeader.textAndMnemonic=Nome
+FileChooser.fileSizeHeader.textAndMnemonic=Dimensioni
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificato
+FileChooser.fileAttrHeader.textAndMnemonic=Attributi
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u53C2\u7167:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u4FDD\u5B58:
-FileChooser.fileNameLabelText=\u30D5\u30A1\u30A4\u30EB\u540D:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u30D5\u30A9\u30EB\u30C0\u540D:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u30D5\u30A1\u30A4\u30EB\u306E\u30BF\u30A4\u30D7:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=1\u30EC\u30D9\u30EB\u4E0A\u3078
-FileChooser.upFolderAccessibleName=\u4E0A\u3078
-FileChooser.homeFolderToolTipText=\u30DB\u30FC\u30E0
-FileChooser.homeFolderAccessibleName=\u30DB\u30FC\u30E0
-FileChooser.newFolderToolTipText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210
-FileChooser.newFolderAccessibleName=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.newFolderActionLabelText=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
-FileChooser.listViewButtonToolTipText=\u30EA\u30B9\u30C8
-FileChooser.listViewButtonAccessibleName=\u30EA\u30B9\u30C8
-FileChooser.listViewActionLabelText=\u30EA\u30B9\u30C8
-FileChooser.detailsViewButtonToolTipText=\u8A73\u7D30
-FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30
-FileChooser.detailsViewActionLabelText=\u8A73\u7D30
-FileChooser.refreshActionLabelText=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5
-FileChooser.viewMenuLabelText=\u8868\u793A
-FileChooser.fileNameHeaderText=\u540D\u524D
-FileChooser.fileSizeHeaderText=\u30B5\u30A4\u30BA
-FileChooser.fileTypeHeaderText=\u30BF\u30A4\u30D7
-FileChooser.fileDateHeaderText=\u4FEE\u6B63\u65E5
-FileChooser.fileAttrHeaderText=\u5C5E\u6027
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u53C2\u7167(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u4FDD\u5B58:
+FileChooser.fileNameLabel.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u540D(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u30D5\u30A9\u30EB\u30C0\u540D(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u30D5\u30A1\u30A4\u30EB\u306E\u30BF\u30A4\u30D7(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=1\u30EC\u30D9\u30EB\u4E0A\u3078
+FileChooser.upFolderAccessibleName=\u4E0A\u3078
+FileChooser.homeFolderToolTip.textAndMnemonic=\u30DB\u30FC\u30E0
+FileChooser.homeFolderAccessibleName=\u30DB\u30FC\u30E0
+FileChooser.newFolderToolTip.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0\u306E\u4F5C\u6210
+FileChooser.newFolderAccessibleName=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u898F\u30D5\u30A9\u30EB\u30C0
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u30EA\u30B9\u30C8
+FileChooser.listViewButtonAccessibleName=\u30EA\u30B9\u30C8
+FileChooser.listViewActionLabel.textAndMnemonic=\u30EA\u30B9\u30C8
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8A73\u7D30
+FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8A73\u7D30
+FileChooser.refreshActionLabel.textAndMnemonic=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5
+FileChooser.viewMenuLabel.textAndMnemonic=\u8868\u793A
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u524D
+FileChooser.fileSizeHeader.textAndMnemonic=\u30B5\u30A4\u30BA
+FileChooser.fileTypeHeader.textAndMnemonic=\u30BF\u30A4\u30D7
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6B63\u65E5
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C5E\u6027
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\uAC80\uC0C9 \uC704\uCE58:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\uC800\uC7A5 \uC704\uCE58:
-FileChooser.fileNameLabelText=\uD30C\uC77C \uC774\uB984:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\uD3F4\uB354 \uC774\uB984:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\uD30C\uC77C \uC720\uD615:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\uD55C \uB808\uBCA8 \uC704\uB85C
-FileChooser.upFolderAccessibleName=\uC704\uB85C
-FileChooser.homeFolderToolTipText=\uD648
-FileChooser.homeFolderAccessibleName=\uD648
-FileChooser.newFolderToolTipText=\uC0C8 \uD3F4\uB354 \uC0DD\uC131
-FileChooser.newFolderAccessibleName=\uC0C8 \uD3F4\uB354
-FileChooser.newFolderActionLabelText=\uC0C8 \uD3F4\uB354
-FileChooser.listViewButtonToolTipText=\uBAA9\uB85D
-FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
-FileChooser.listViewActionLabelText=\uBAA9\uB85D
-FileChooser.detailsViewButtonToolTipText=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewActionLabelText=\uC138\uBD80 \uC815\uBCF4
-FileChooser.refreshActionLabelText=\uC0C8\uB85C \uACE0\uCE68
-FileChooser.viewMenuLabelText=\uBCF4\uAE30
-FileChooser.fileNameHeaderText=\uC774\uB984
-FileChooser.fileSizeHeaderText=\uD06C\uAE30
-FileChooser.fileTypeHeaderText=\uC720\uD615
-FileChooser.fileDateHeaderText=\uC218\uC815 \uB0A0\uC9DC
-FileChooser.fileAttrHeaderText=\uC18D\uC131
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\uAC80\uC0C9 \uC704\uCE58(&I):
+FileChooser.saveInLabel.textAndMnemonic=\uC800\uC7A5 \uC704\uCE58:
+FileChooser.fileNameLabel.textAndMnemonic=\uD30C\uC77C \uC774\uB984(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\uD3F4\uB354 \uC774\uB984(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\uD30C\uC77C \uC720\uD615(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\uD55C \uB808\uBCA8 \uC704\uB85C
+FileChooser.upFolderAccessibleName=\uC704\uB85C
+FileChooser.homeFolderToolTip.textAndMnemonic=\uD648
+FileChooser.homeFolderAccessibleName=\uD648
+FileChooser.newFolderToolTip.textAndMnemonic=\uC0C8 \uD3F4\uB354 \uC0DD\uC131
+FileChooser.newFolderAccessibleName=\uC0C8 \uD3F4\uB354
+FileChooser.newFolderActionLabel.textAndMnemonic=\uC0C8 \uD3F4\uB354
+FileChooser.listViewButtonToolTip.textAndMnemonic=\uBAA9\uB85D
+FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
+FileChooser.listViewActionLabel.textAndMnemonic=\uBAA9\uB85D
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.refreshActionLabel.textAndMnemonic=\uC0C8\uB85C \uACE0\uCE68
+FileChooser.viewMenuLabel.textAndMnemonic=\uBCF4\uAE30
+FileChooser.fileNameHeader.textAndMnemonic=\uC774\uB984
+FileChooser.fileSizeHeader.textAndMnemonic=\uD06C\uAE30
+FileChooser.fileTypeHeader.textAndMnemonic=\uC720\uD615
+FileChooser.fileDateHeader.textAndMnemonic=\uC218\uC815 \uB0A0\uC9DC
+FileChooser.fileAttrHeader.textAndMnemonic=\uC18D\uC131
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Consultar Em:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Salvar Em:
-FileChooser.fileNameLabelText=Nome do Arquivo:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Nome da pasta:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Arquivos do Tipo:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Um N\u00EDvel Acima
-FileChooser.upFolderAccessibleName=Acima
-FileChooser.homeFolderToolTipText=In\u00EDcio
-FileChooser.homeFolderAccessibleName=In\u00EDcio
-FileChooser.newFolderToolTipText=Criar Nova Pasta
-FileChooser.newFolderAccessibleName=Nova Pasta
-FileChooser.newFolderActionLabelText=Nova Pasta
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detalhes
-FileChooser.detailsViewButtonAccessibleName=Detalhes
-FileChooser.detailsViewActionLabelText=Detalhes
-FileChooser.refreshActionLabelText=Atualizar
-FileChooser.viewMenuLabelText=Exibir
-FileChooser.fileNameHeaderText=Nome
-FileChooser.fileSizeHeaderText=Tamanho
-FileChooser.fileTypeHeaderText=Tipo
-FileChooser.fileDateHeaderText=Modificado
-FileChooser.fileAttrHeaderText=Atributos
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Consultar Em(&I):
+FileChooser.saveInLabel.textAndMnemonic=Salvar Em:
+FileChooser.fileNameLabel.textAndMnemonic=&Nome do Arquivo:
+FileChooser.folderNameLabel.textAndMnemonic=&Nome da pasta:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Arquivos do &Tipo:
+FileChooser.upFolderToolTip.textAndMnemonic=Um N\u00EDvel Acima
+FileChooser.upFolderAccessibleName=Acima
+FileChooser.homeFolderToolTip.textAndMnemonic=In\u00EDcio
+FileChooser.homeFolderAccessibleName=In\u00EDcio
+FileChooser.newFolderToolTip.textAndMnemonic=Criar Nova Pasta
+FileChooser.newFolderAccessibleName=Nova Pasta
+FileChooser.newFolderActionLabel.textAndMnemonic=Nova Pasta
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detalhes
+FileChooser.detailsViewButtonAccessibleName=Detalhes
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detalhes
+FileChooser.refreshActionLabel.textAndMnemonic=Atualizar
+FileChooser.viewMenuLabel.textAndMnemonic=Exibir
+FileChooser.fileNameHeader.textAndMnemonic=Nome
+FileChooser.fileSizeHeader.textAndMnemonic=Tamanho
+FileChooser.fileTypeHeader.textAndMnemonic=Tipo
+FileChooser.fileDateHeader.textAndMnemonic=Modificado
+FileChooser.fileAttrHeader.textAndMnemonic=Atributos
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=Leta i:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=Spara i:
-FileChooser.fileNameLabelText=Filnamn:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=Mapp:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=Filformat:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=Upp en niv\u00E5
-FileChooser.upFolderAccessibleName=Upp
-FileChooser.homeFolderToolTipText=Hem
-FileChooser.homeFolderAccessibleName=Hem
-FileChooser.newFolderToolTipText=Skapa ny mapp
-FileChooser.newFolderAccessibleName=Ny mapp
-FileChooser.newFolderActionLabelText=Ny mapp
-FileChooser.listViewButtonToolTipText=Lista
-FileChooser.listViewButtonAccessibleName=Lista
-FileChooser.listViewActionLabelText=Lista
-FileChooser.detailsViewButtonToolTipText=Detaljer
-FileChooser.detailsViewButtonAccessibleName=Detaljer
-FileChooser.detailsViewActionLabelText=Detaljer
-FileChooser.refreshActionLabelText=F\u00F6rnya
-FileChooser.viewMenuLabelText=Vy
-FileChooser.fileNameHeaderText=Namn
-FileChooser.fileSizeHeaderText=Storlek
-FileChooser.fileTypeHeaderText=Typ
-FileChooser.fileDateHeaderText=\u00C4ndrad
-FileChooser.fileAttrHeaderText=Attribut
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=Leta &i:
+FileChooser.saveInLabel.textAndMnemonic=Spara i:
+FileChooser.fileNameLabel.textAndMnemonic=Fil&namn:
+FileChooser.folderNameLabel.textAndMnemonic=Mapp(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=Filforma&t:
+FileChooser.upFolderToolTip.textAndMnemonic=Upp en niv\u00E5
+FileChooser.upFolderAccessibleName=Upp
+FileChooser.homeFolderToolTip.textAndMnemonic=Hem
+FileChooser.homeFolderAccessibleName=Hem
+FileChooser.newFolderToolTip.textAndMnemonic=Skapa ny mapp
+FileChooser.newFolderAccessibleName=Ny mapp
+FileChooser.newFolderActionLabel.textAndMnemonic=Ny mapp
+FileChooser.listViewButtonToolTip.textAndMnemonic=Lista
+FileChooser.listViewButtonAccessibleName=Lista
+FileChooser.listViewActionLabel.textAndMnemonic=Lista
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=Detaljer
+FileChooser.detailsViewButtonAccessibleName=Detaljer
+FileChooser.detailsViewActionLabel.textAndMnemonic=Detaljer
+FileChooser.refreshActionLabel.textAndMnemonic=F\u00F6rnya
+FileChooser.viewMenuLabel.textAndMnemonic=Vy
+FileChooser.fileNameHeader.textAndMnemonic=Namn
+FileChooser.fileSizeHeader.textAndMnemonic=Storlek
+FileChooser.fileTypeHeader.textAndMnemonic=Typ
+FileChooser.fileDateHeader.textAndMnemonic=\u00C4ndrad
+FileChooser.fileAttrHeader.textAndMnemonic=Attribut
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u67E5\u770B: 
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u4FDD\u5B58: 
-FileChooser.fileNameLabelText=\u6587\u4EF6\u540D: 
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u6587\u4EF6\u5939\u540D: 
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u6587\u4EF6\u7C7B\u578B: 
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\u5411\u4E0A\u4E00\u7EA7
-FileChooser.upFolderAccessibleName=\u5411\u4E0A
-FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u5F55
-FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u5F55
-FileChooser.newFolderToolTipText=\u521B\u5EFA\u65B0\u6587\u4EF6\u5939
-FileChooser.newFolderAccessibleName=\u65B0\u5EFA\u6587\u4EF6\u5939
-FileChooser.newFolderActionLabelText=\u65B0\u5EFA\u6587\u4EF6\u5939
-FileChooser.listViewButtonToolTipText=\u5217\u8868
-FileChooser.listViewButtonAccessibleName=\u5217\u8868
-FileChooser.listViewActionLabelText=\u5217\u8868
-FileChooser.detailsViewButtonToolTipText=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.detailsViewButtonAccessibleName=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.detailsViewActionLabelText=\u8BE6\u7EC6\u8D44\u6599
-FileChooser.refreshActionLabelText=\u5237\u65B0
-FileChooser.viewMenuLabelText=\u89C6\u56FE
-FileChooser.fileNameHeaderText=\u540D\u79F0
-FileChooser.fileSizeHeaderText=\u5927\u5C0F
-FileChooser.fileTypeHeaderText=\u7C7B\u578B
-FileChooser.fileDateHeaderText=\u4FEE\u6539\u65E5\u671F
-FileChooser.fileAttrHeaderText=\u5C5E\u6027
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u67E5\u770B(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u4FDD\u5B58:
+FileChooser.fileNameLabel.textAndMnemonic=\u6587\u4EF6\u540D(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u6587\u4EF6\u5939\u540D(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u6587\u4EF6\u7C7B\u578B(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\u5411\u4E0A\u4E00\u7EA7
+FileChooser.upFolderAccessibleName=\u5411\u4E0A
+FileChooser.homeFolderToolTip.textAndMnemonic=\u4E3B\u76EE\u5F55
+FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u5F55
+FileChooser.newFolderToolTip.textAndMnemonic=\u521B\u5EFA\u65B0\u6587\u4EF6\u5939
+FileChooser.newFolderAccessibleName=\u65B0\u5EFA\u6587\u4EF6\u5939
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u5EFA\u6587\u4EF6\u5939
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u5217\u8868
+FileChooser.listViewButtonAccessibleName=\u5217\u8868
+FileChooser.listViewActionLabel.textAndMnemonic=\u5217\u8868
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.detailsViewButtonAccessibleName=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8BE6\u7EC6\u8D44\u6599
+FileChooser.refreshActionLabel.textAndMnemonic=\u5237\u65B0
+FileChooser.viewMenuLabel.textAndMnemonic=\u89C6\u56FE
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u79F0
+FileChooser.fileSizeHeader.textAndMnemonic=\u5927\u5C0F
+FileChooser.fileTypeHeader.textAndMnemonic=\u7C7B\u578B
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6539\u65E5\u671F
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C5E\u6027
--- a/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,49 +1,45 @@
-# This properties file is used to create a PropertyResourceBundle
-# It contains Locale specific strings used be the Synth Look and Feel.
-# Currently, the following components need this for support:
-#
-#    FileChooser
-#
-# When this file is read in, the strings are put into the 
-# defaults table.  This is an implementation detail of the current
-# workings of Swing.  DO NOT DEPEND ON THIS.  
-# This may change in future versions of Swing as we improve localization 
-# support.
-#
-# Refer to the note in basic.properties for a description as to what
-# the mnemonics correspond to and how to calculate them.
-#
-# @author Steve Wilson
-
-
-############ FILE CHOOSER STRINGS #############
-
-FileChooser.lookInLabelText=\u67E5\u8A62:
-FileChooser.lookInLabelMnemonic=73
-FileChooser.saveInLabelText=\u5132\u5B58\u65BC: 
-FileChooser.fileNameLabelText=\u6A94\u6848\u540D\u7A31:
-FileChooser.fileNameLabelMnemonic=78
-FileChooser.folderNameLabelText=\u8CC7\u6599\u593E\u540D\u7A31:
-FileChooser.folderNameLabelMnemonic=78
-FileChooser.filesOfTypeLabelText=\u6A94\u6848\u985E\u578B:
-FileChooser.filesOfTypeLabelMnemonic=84
-FileChooser.upFolderToolTipText=\u5F80\u4E0A\u4E00\u5C64
-FileChooser.upFolderAccessibleName=\u5F80\u4E0A
-FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u9304
-FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u9304
-FileChooser.newFolderToolTipText=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E
-FileChooser.newFolderAccessibleName=\u65B0\u8CC7\u6599\u593E
-FileChooser.newFolderActionLabelText=\u65B0\u8CC7\u6599\u593E
-FileChooser.listViewButtonToolTipText=\u6E05\u55AE
-FileChooser.listViewButtonAccessibleName=\u6E05\u55AE
-FileChooser.listViewActionLabelText=\u6E05\u55AE
-FileChooser.detailsViewButtonToolTipText=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.detailsViewActionLabelText=\u8A73\u7D30\u8CC7\u8A0A
-FileChooser.refreshActionLabelText=\u91CD\u65B0\u6574\u7406
-FileChooser.viewMenuLabelText=\u6AA2\u8996
-FileChooser.fileNameHeaderText=\u540D\u7A31
-FileChooser.fileSizeHeaderText=\u5927\u5C0F
-FileChooser.fileTypeHeaderText=\u985E\u578B
-FileChooser.fileDateHeaderText=\u4FEE\u6539\u65E5\u671F
-FileChooser.fileAttrHeaderText=\u5C6C\u6027
+# This properties file is used to create a PropertyResourceBundle
+# It contains Locale specific strings used be the Synth Look and Feel.
+# Currently, the following components need this for support:
+#
+#    FileChooser
+#
+# When this file is read in, the strings are put into the
+# defaults table.  This is an implementation detail of the current
+# workings of Swing.  DO NOT DEPEND ON THIS.
+# This may change in future versions of Swing as we improve localization
+# support.
+#
+# Refer to the note in basic.properties for a description as to what
+# the mnemonics correspond to and how to calculate them.
+#
+# @author Steve Wilson
+
+
+############ FILE CHOOSER STRINGS #############
+
+FileChooser.lookInLabel.textAndMnemonic=\u67E5\u8A62(&I):
+FileChooser.saveInLabel.textAndMnemonic=\u5132\u5B58\u65BC:
+FileChooser.fileNameLabel.textAndMnemonic=\u6A94\u6848\u540D\u7A31(&N):
+FileChooser.folderNameLabel.textAndMnemonic=\u8CC7\u6599\u593E\u540D\u7A31(&N):
+FileChooser.filesOfTypeLabel.textAndMnemonic=\u6A94\u6848\u985E\u578B(&T):
+FileChooser.upFolderToolTip.textAndMnemonic=\u5F80\u4E0A\u4E00\u5C64
+FileChooser.upFolderAccessibleName=\u5F80\u4E0A
+FileChooser.homeFolderToolTip.textAndMnemonic=\u4E3B\u76EE\u9304
+FileChooser.homeFolderAccessibleName=\u4E3B\u76EE\u9304
+FileChooser.newFolderToolTip.textAndMnemonic=\u5EFA\u7ACB\u65B0\u8CC7\u6599\u593E
+FileChooser.newFolderAccessibleName=\u65B0\u8CC7\u6599\u593E
+FileChooser.newFolderActionLabel.textAndMnemonic=\u65B0\u8CC7\u6599\u593E
+FileChooser.listViewButtonToolTip.textAndMnemonic=\u6E05\u55AE
+FileChooser.listViewButtonAccessibleName=\u6E05\u55AE
+FileChooser.listViewActionLabel.textAndMnemonic=\u6E05\u55AE
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.detailsViewButtonAccessibleName=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.detailsViewActionLabel.textAndMnemonic=\u8A73\u7D30\u8CC7\u8A0A
+FileChooser.refreshActionLabel.textAndMnemonic=\u91CD\u65B0\u6574\u7406
+FileChooser.viewMenuLabel.textAndMnemonic=\u6AA2\u8996
+FileChooser.fileNameHeader.textAndMnemonic=\u540D\u7A31
+FileChooser.fileSizeHeader.textAndMnemonic=\u5927\u5C0F
+FileChooser.fileTypeHeader.textAndMnemonic=\u985E\u578B
+FileChooser.fileDateHeader.textAndMnemonic=\u4FEE\u6539\u65E5\u671F
+FileChooser.fileAttrHeader.textAndMnemonic=\u5C6C\u6027
--- a/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java	Tue May 08 07:34:53 2012 -0700
@@ -114,6 +114,23 @@
             String value = token.substring(index + 1,
                                            token.length() - 1); // Remove comma delimiter
 
+            /*
+             * for values enclosed in quotes (single and/or double quotes)
+             * strip off enclosing quote chars
+             * needed for quote enclosed delimited substrings
+             */
+            if (name.equals("options")) {
+                StringBuilder sb = new StringBuilder();
+                for (String s : splitStringAtNonEnclosedWhiteSpace(value)) {
+                    while (isEnclosed(s, "\"") || isEnclosed(s, "'")) {
+                        s = s.substring(1, s.length() - 1);
+                    }
+                    sb.append(s);
+                    sb.append(" ");
+                }
+                value = sb.toString();
+            }
+
             Connector.Argument argument = arguments.get(name);
             if (argument == null) {
                 throw new IllegalArgumentException
@@ -136,6 +153,152 @@
         return arguments;
     }
 
+    private static boolean isEnclosed(String value, String enclosingChar) {
+        if (value.indexOf(enclosingChar) == 0) {
+            int lastIndex = value.lastIndexOf(enclosingChar);
+            if (lastIndex > 0 && lastIndex  == value.length() - 1) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    private static List<String> splitStringAtNonEnclosedWhiteSpace(String value) throws IllegalArgumentException {
+        List<String> al = new ArrayList<String>();
+        char[] arr;
+        int startPosition = 0;
+        int endPosition = 0;
+        final char SPACE = ' ';
+        final char DOUBLEQ = '"';
+        final char SINGLEQ = '\'';
+
+        /*
+         * An "open" or "active" enclosing state is where
+         * the first valid start quote qualifier is found,
+         * and there is a search in progress for the
+         * relevant end matching quote
+         *
+         * enclosingTargetChar set to SPACE
+         * is used to signal a non open enclosing state
+         */
+        char enclosingTargetChar = SPACE;
+
+        if (value == null) {
+            throw new IllegalArgumentException
+                (MessageOutput.format("value string is null"));
+        }
+
+        // split parameter string into individual chars
+        arr = value.toCharArray();
+
+        for (int i = 0; i < arr.length; i++) {
+            switch (arr[i]) {
+                case SPACE: {
+                    // do nothing for spaces
+                    // unless last in array
+                    if (isLastChar(arr, i)) {
+                        endPosition = i;
+                        // break for substring creation
+                        break;
+                    }
+                    continue;
+                }
+                case DOUBLEQ:
+                case SINGLEQ: {
+                    if (enclosingTargetChar == arr[i]) {
+                        // potential match to close open enclosing
+                        if (isNextCharWhitespace(arr, i)) {
+                            // if peek next is whitespace
+                            // then enclosing is a valid substring
+                            endPosition = i;
+                            // reset enclosing target char
+                            enclosingTargetChar = SPACE;
+                            // break for substring creation
+                            break;
+                        }
+                    }
+                    if (enclosingTargetChar == SPACE) {
+                        // no open enclosing state
+                        // handle as normal char
+                        if (isPreviousCharWhitespace(arr, i)) {
+                            startPosition = i;
+                            // peek forward for end candidates
+                            if (value.indexOf(arr[i], i + 1) >= 0) {
+                                // set open enclosing state by
+                                // setting up the target char
+                                enclosingTargetChar = arr[i];
+                            } else {
+                                // no more target chars left to match
+                                // end enclosing, handle as normal char
+                                if (isNextCharWhitespace(arr, i)) {
+                                    endPosition = i;
+                                    // break for substring creation
+                                    break;
+                                }
+                            }
+                        }
+                    }
+                    continue;
+                }
+                default: {
+                    // normal non-space, non-" and non-' chars
+                    if (enclosingTargetChar == SPACE) {
+                        // no open enclosing state
+                        if (isPreviousCharWhitespace(arr, i)) {
+                            // start of space delim substring
+                            startPosition = i;
+                        }
+                        if (isNextCharWhitespace(arr, i)) {
+                            // end of space delim substring
+                            endPosition = i;
+                            // break for substring creation
+                            break;
+                        }
+                    }
+                    continue;
+                }
+            }
+
+            // break's end up here
+            if (startPosition > endPosition) {
+                throw new IllegalArgumentException
+                    (MessageOutput.format("Illegal option values"));
+            }
+
+            // extract substring and add to List<String>
+            al.add(value.substring(startPosition, ++endPosition));
+
+            // set new start position
+            i = startPosition = endPosition;
+
+        } // for loop
+
+        return al;
+    }
+
+    static private boolean isPreviousCharWhitespace(char[] arr, int curr_pos) {
+        return isCharWhitespace(arr, curr_pos - 1);
+    }
+
+    static private boolean isNextCharWhitespace(char[] arr, int curr_pos) {
+        return isCharWhitespace(arr, curr_pos + 1);
+    }
+
+    static private boolean isCharWhitespace(char[] arr, int pos) {
+        if (pos < 0 || pos >= arr.length) {
+            // outside arraybounds is considered an implicit space
+            return true;
+        }
+        if (arr[pos] == ' ') {
+            return true;
+        }
+        return false;
+    }
+
+    static private boolean isLastChar(char[] arr, int pos) {
+        return (pos + 1 == arr.length);
+    }
+
     VMConnection(String connectSpec, int traceFlags) {
         String nameString;
         String argString;
--- a/src/share/classes/java/awt/AlphaComposite.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/awt/AlphaComposite.java	Tue May 08 07:34:53 2012 -0700
@@ -26,6 +26,7 @@
 package java.awt;
 
 import java.awt.image.ColorModel;
+import javax.tools.annotation.GenerateNativeHeader;
 import sun.java2d.SunCompositeContext;
 
 /**
@@ -349,6 +350,8 @@
  * @see CompositeContext
  */
 
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public final class AlphaComposite implements Composite {
     /**
      * Both the color and the alpha of the destination are cleared
--- a/src/share/classes/java/awt/event/FocusEvent.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/awt/event/FocusEvent.java	Tue May 08 07:34:53 2012 -0700
@@ -26,6 +26,7 @@
 package java.awt.event;
 
 import java.awt.Component;
+import javax.tools.annotation.GenerateNativeHeader;
 import sun.awt.AppContext;
 import sun.awt.SunToolkit;
 
@@ -63,6 +64,8 @@
  * @author Amy Fowler
  * @since 1.1
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class FocusEvent extends ComponentEvent {
 
     /**
--- a/src/share/classes/java/awt/event/WindowEvent.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/awt/event/WindowEvent.java	Tue May 08 07:34:53 2012 -0700
@@ -26,6 +26,7 @@
 package java.awt.event;
 
 import java.awt.Window;
+import javax.tools.annotation.GenerateNativeHeader;
 import sun.awt.AppContext;
 import sun.awt.SunToolkit;
 
@@ -55,6 +56,8 @@
  *
  * @since JDK1.1
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class WindowEvent extends ComponentEvent {
 
     /**
--- a/src/share/classes/java/awt/font/NumericShaper.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/awt/font/NumericShaper.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -633,7 +633,6 @@
         0x06d6, 0x06e5,
         0x06e7, 0x06ee,
         0x06f0, 0x06fa,
-        0x070f, 0x0710,
         0x0711, 0x0712,
         0x0730, 0x074d,
         0x07a6, 0x07b1,
@@ -644,7 +643,7 @@
         0x0825, 0x0828,
         0x0829, 0x0830,
         0x0859, 0x085e,
-        0x0900, 0x0903,
+        0x08e4, 0x0903,
         0x093a, 0x093b,
         0x093c, 0x093d,
         0x0941, 0x0949,
@@ -723,6 +722,7 @@
         0x1732, 0x1735,
         0x1752, 0x1760,
         0x1772, 0x1780,
+        0x17b4, 0x17b6,
         0x17b7, 0x17be,
         0x17c6, 0x17c7,
         0x17c9, 0x17d4,
@@ -750,6 +750,7 @@
         0x1b80, 0x1b82,
         0x1ba2, 0x1ba6,
         0x1ba8, 0x1baa,
+        0x1bab, 0x1bac,
         0x1be6, 0x1be7,
         0x1be8, 0x1bea,
         0x1bed, 0x1bee,
@@ -760,6 +761,7 @@
         0x1cd4, 0x1ce1,
         0x1ce2, 0x1ce9,
         0x1ced, 0x1cee,
+        0x1cf4, 0x1cf5,
         0x1dc0, 0x1e00,
         0x1fbd, 0x1fbe,
         0x1fbf, 0x1fc2,
@@ -791,7 +793,8 @@
         0x26ad, 0x2800,
         0x2900, 0x2c00,
         0x2ce5, 0x2ceb,
-        0x2cef, 0x2d00,
+        0x2cef, 0x2cf2,
+        0x2cf9, 0x2d00,
         0x2d7f, 0x2d80,
         0x2de0, 0x3005,
         0x3008, 0x3021,
@@ -814,6 +817,7 @@
         0xa490, 0xa4d0,
         0xa60d, 0xa610,
         0xa66f, 0xa680,
+        0xa69f, 0xa6a0,
         0xa6f0, 0xa6f2,
         0xa700, 0xa722,
         0xa788, 0xa789,
@@ -842,6 +846,8 @@
         0xaab7, 0xaab9,
         0xaabe, 0xaac0,
         0xaac1, 0xaac2,
+        0xaaec, 0xaaee,
+        0xaaf6, 0xab01,
         0xabe5, 0xabe6,
         0xabe8, 0xabe9,
         0xabed, 0xabf0,
@@ -867,6 +873,16 @@
         0x11080, 0x11082,
         0x110b3, 0x110b7,
         0x110b9, 0x110bb,
+        0x11100, 0x11103,
+        0x11127, 0x1112c,
+        0x1112d, 0x11136,
+        0x11180, 0x11182,
+        0x111b6, 0x111bf,
+        0x116ab, 0x116ac,
+        0x116ad, 0x116ae,
+        0x116b0, 0x116b6,
+        0x116b7, 0x116c0,
+        0x16f8f, 0x16f93,
         0x1d167, 0x1d16a,
         0x1d173, 0x1d183,
         0x1d185, 0x1d18c,
@@ -877,7 +893,9 @@
         0x1d74f, 0x1d750,
         0x1d789, 0x1d78a,
         0x1d7c3, 0x1d7c4,
-        0x1d7ce, 0x1f110,
+        0x1d7ce, 0x1ee00,
+        0x1eef0, 0x1f110,
+        0x1f16a, 0x1f170,
         0x1f300, 0x1f48c,
         0x1f48d, 0x1f524,
         0x1f525, 0x20000,
--- a/src/share/classes/java/lang/Character.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/lang/Character.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2012, Oracle and/or its affiliates. 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
@@ -40,7 +40,7 @@
  * a character's category (lowercase letter, digit, etc.) and for converting
  * characters from uppercase to lowercase and vice versa.
  * <p>
- * Character information is based on the Unicode Standard, version 6.0.0.
+ * Character information is based on the Unicode Standard, version 6.1.0.
  * <p>
  * The methods and data of class {@code Character} are defined by
  * the information in the <i>UnicodeData</i> file that is part of the
@@ -2465,6 +2465,98 @@
                              "CJK UNIFIED IDEOGRAPHS EXTENSION D",
                              "CJKUNIFIEDIDEOGRAPHSEXTENSIOND");
 
+        /**
+         * Constant for the "Arabic Extended-A" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock ARABIC_EXTENDED_A =
+            new UnicodeBlock("ARABIC_EXTENDED_A",
+                             "ARABIC EXTENDED-A",
+                             "ARABICEXTENDED-A");
+
+        /**
+         * Constant for the "Sundanese Supplement" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock SUNDANESE_SUPPLEMENT =
+            new UnicodeBlock("SUNDANESE_SUPPLEMENT",
+                             "SUNDANESE SUPPLEMENT",
+                             "SUNDANESESUPPLEMENT");
+
+        /**
+         * Constant for the "Meetei Mayek Extensions" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock MEETEI_MAYEK_EXTENSIONS =
+            new UnicodeBlock("MEETEI_MAYEK_EXTENSIONS",
+                             "MEETEI MAYEK EXTENSIONS",
+                             "MEETEIMAYEKEXTENSIONS");
+
+        /**
+         * Constant for the "Meroitic Hieroglyphs" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock MEROITIC_HIEROGLYPHS =
+            new UnicodeBlock("MEROITIC_HIEROGLYPHS",
+                             "MEROITIC HIEROGLYPHS",
+                             "MEROITICHIEROGLYPHS");
+
+        /**
+         * Constant for the "Meroitic Cursive" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock MEROITIC_CURSIVE =
+            new UnicodeBlock("MEROITIC_CURSIVE",
+                             "MEROITIC CURSIVE",
+                             "MEROITICCURSIVE");
+
+        /**
+         * Constant for the "Sora Sompeng" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock SORA_SOMPENG =
+            new UnicodeBlock("SORA_SOMPENG",
+                             "SORA SOMPENG",
+                             "SORASOMPENG");
+
+        /**
+         * Constant for the "Chakma" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock CHAKMA =
+            new UnicodeBlock("CHAKMA");
+
+        /**
+         * Constant for the "Sharada" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock SHARADA =
+            new UnicodeBlock("SHARADA");
+
+        /**
+         * Constant for the "Takri" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock TAKRI =
+            new UnicodeBlock("TAKRI");
+
+        /**
+         * Constant for the "Miao" Unicode character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock MIAO =
+            new UnicodeBlock("MIAO");
+
+        /**
+         * Constant for the "Arabic Mathematical Alphabetic Symbols" Unicode
+         * character block.
+         * @since 1.8
+         */
+        public static final UnicodeBlock ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS =
+            new UnicodeBlock("ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS",
+                             "ARABIC MATHEMATICAL ALPHABETIC SYMBOLS",
+                             "ARABICMATHEMATICALALPHABETICSYMBOLS");
+
         private static final int blockStarts[] = {
             0x0000,   // 0000..007F; Basic Latin
             0x0080,   // 0080..00FF; Latin-1 Supplement
@@ -2486,6 +2578,7 @@
             0x0800,   // 0800..083F; Samaritan
             0x0840,   // 0840..085F; Mandaic
             0x0860,   //             unassigned
+            0x08A0,   // 08A0..08FF; Arabic Extended-A
             0x0900,   // 0900..097F; Devanagari
             0x0980,   // 0980..09FF; Bengali
             0x0A00,   // 0A00..0A7F; Gurmukhi
@@ -2528,6 +2621,7 @@
             0x1C00,   // 1C00..1C4F; Lepcha
             0x1C50,   // 1C50..1C7F; Ol Chiki
             0x1C80,   //             unassigned
+            0x1CC0,   // 1CC0..1CCF; Sundanese Supplement
             0x1CD0,   // 1CD0..1CFF; Vedic Extensions
             0x1D00,   // 1D00..1D7F; Phonetic Extensions
             0x1D80,   // 1D80..1DBF; Phonetic Extensions Supplement
@@ -2605,7 +2699,7 @@
             0xAA00,   // AA00..AA5F; Cham
             0xAA60,   // AA60..AA7F; Myanmar Extended-A
             0xAA80,   // AA80..AADF; Tai Viet
-            0xAAE0,   //             unassigned
+            0xAAE0,   // AAE0..AAFF; Meetei Mayek Extensions
             0xAB00,   // AB00..AB2F; Ethiopic Extended-A
             0xAB30,   //             unassigned
             0xABC0,   // ABC0..ABFF; Meetei Mayek
@@ -2652,6 +2746,8 @@
             0x10900,  // 10900..1091F; Phoenician
             0x10920,  // 10920..1093F; Lydian
             0x10940,  //               unassigned
+            0x10980,  // 10980..1099F; Meroitic Hieroglyphs
+            0x109A0,  // 109A0..109FF; Meroitic Cursive
             0x10A00,  // 10A00..10A5F; Kharoshthi
             0x10A60,  // 10A60..10A7F; Old South Arabian
             0x10A80,  //               unassigned
@@ -2665,7 +2761,13 @@
             0x10E80,  //               unassigned
             0x11000,  // 11000..1107F; Brahmi
             0x11080,  // 11080..110CF; Kaithi
-            0x110D0,  //               unassigned
+            0x110D0,  // 110D0..110FF; Sora Sompeng
+            0x11100,  // 11100..1114F; Chakma
+            0x11150,  //               unassigned
+            0x11180,  // 11180..111DF; Sharada
+            0x111E0,  //               unassigned
+            0x11680,  // 11680..116CF; Takri
+            0x116D0,  //               unassigned
             0x12000,  // 12000..123FF; Cuneiform
             0x12400,  // 12400..1247F; Cuneiform Numbers and Punctuation
             0x12480,  //               unassigned
@@ -2673,6 +2775,8 @@
             0x13430,  //               unassigned
             0x16800,  // 16800..16A3F; Bamum Supplement
             0x16A40,  //               unassigned
+            0x16F00,  // 16F00..16F9F; Miao
+            0x16FA0,  //               unassigned
             0x1B000,  // 1B000..1B0FF; Kana Supplement
             0x1B100,  //               unassigned
             0x1D000,  // 1D000..1D0FF; Byzantine Musical Symbols
@@ -2684,6 +2788,8 @@
             0x1D380,  //               unassigned
             0x1D400,  // 1D400..1D7FF; Mathematical Alphanumeric Symbols
             0x1D800,  //               unassigned
+            0x1EE00,  // 1EE00..1EEFF; Arabic Mathematical Alphabetic Symbols
+            0x1EF00,  //               unassigned
             0x1F000,  // 1F000..1F02F; Mahjong Tiles
             0x1F030,  // 1F030..1F09F; Domino Tiles
             0x1F0A0,  // 1F0A0..1F0FF; Playing Cards
@@ -2731,6 +2837,7 @@
             SAMARITAN,
             MANDAIC,
             null,
+            ARABIC_EXTENDED_A,
             DEVANAGARI,
             BENGALI,
             GURMUKHI,
@@ -2773,6 +2880,7 @@
             LEPCHA,
             OL_CHIKI,
             null,
+            SUNDANESE_SUPPLEMENT,
             VEDIC_EXTENSIONS,
             PHONETIC_EXTENSIONS,
             PHONETIC_EXTENSIONS_SUPPLEMENT,
@@ -2850,7 +2958,7 @@
             CHAM,
             MYANMAR_EXTENDED_A,
             TAI_VIET,
-            null,
+            MEETEI_MAYEK_EXTENSIONS,
             ETHIOPIC_EXTENDED_A,
             null,
             MEETEI_MAYEK,
@@ -2897,6 +3005,8 @@
             PHOENICIAN,
             LYDIAN,
             null,
+            MEROITIC_HIEROGLYPHS,
+            MEROITIC_CURSIVE,
             KHAROSHTHI,
             OLD_SOUTH_ARABIAN,
             null,
@@ -2910,6 +3020,12 @@
             null,
             BRAHMI,
             KAITHI,
+            SORA_SOMPENG,
+            CHAKMA,
+            null,
+            SHARADA,
+            null,
+            TAKRI,
             null,
             CUNEIFORM,
             CUNEIFORM_NUMBERS_AND_PUNCTUATION,
@@ -2918,6 +3034,8 @@
             null,
             BAMUM_SUPPLEMENT,
             null,
+            MIAO,
+            null,
             KANA_SUPPLEMENT,
             null,
             BYZANTINE_MUSICAL_SYMBOLS,
@@ -2929,6 +3047,8 @@
             null,
             MATHEMATICAL_ALPHANUMERIC_SYMBOLS,
             null,
+            ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS,
+            null,
             MAHJONG_TILES,
             DOMINO_TILES,
             PLAYING_CARDS,
@@ -3550,6 +3670,41 @@
         KAITHI,
 
         /**
+         * Unicode script "Meroitic Hieroglyphs".
+         */
+        MEROITIC_HIEROGLYPHS,
+
+        /**
+         * Unicode script "Meroitic Cursive".
+         */
+        MEROITIC_CURSIVE,
+
+        /**
+         * Unicode script "Sora Sompeng".
+         */
+        SORA_SOMPENG,
+
+        /**
+         * Unicode script "Chakma".
+         */
+        CHAKMA,
+
+        /**
+         * Unicode script "Sharada".
+         */
+        SHARADA,
+
+        /**
+         * Unicode script "Takri".
+         */
+        TAKRI,
+
+        /**
+         * Unicode script "Miao".
+         */
+        MIAO,
+
+        /**
          * Unicode script "Unknown".
          */
         UNKNOWN;
@@ -3616,14 +3771,13 @@
             0x0780,   // 0780..07BF; THAANA
             0x07C0,   // 07C0..07FF; NKO
             0x0800,   // 0800..083F; SAMARITAN
-            0x0840,   // 0840..08FF; MANDAIC
+            0x0840,   // 0840..089F; MANDAIC
+            0x08A0,   // 08A0..08FF; ARABIC
             0x0900,   // 0900..0950; DEVANAGARI
             0x0951,   // 0951..0952; INHERITED
             0x0953,   // 0953..0963; DEVANAGARI
             0x0964,   // 0964..0965; COMMON
-            0x0966,   // 0966..096F; DEVANAGARI
-            0x0970,   // 0970..0970; COMMON
-            0x0971,   // 0971..0980; DEVANAGARI
+            0x0966,   // 0966..0980; DEVANAGARI
             0x0981,   // 0981..0A00; BENGALI
             0x0A01,   // 0A01..0A80; GURMUKHI
             0x0A81,   // 0A81..0B00; GUJARATI
@@ -3674,7 +3828,8 @@
             0x1B80,   // 1B80..1BBF; SUNDANESE
             0x1BC0,   // 1BC0..1BFF; BATAK
             0x1C00,   // 1C00..1C4F; LEPCHA
-            0x1C50,   // 1C50..1CCF; OL_CHIKI
+            0x1C50,   // 1C50..1CBF; OL_CHIKI
+            0x1CC0,   // 1CC0..1CCF; SUNDANESE
             0x1CD0,   // 1CD0..1CD2; INHERITED
             0x1CD3,   // 1CD3..1CD3; COMMON
             0x1CD4,   // 1CD4..1CE0; INHERITED
@@ -3682,7 +3837,9 @@
             0x1CE2,   // 1CE2..1CE8; INHERITED
             0x1CE9,   // 1CE9..1CEC; COMMON
             0x1CED,   // 1CED..1CED; INHERITED
-            0x1CEE,   // 1CEE..1CFF; COMMON
+            0x1CEE,   // 1CEE..1CF3; COMMON
+            0x1CF4,   // 1CF4..1CF4; INHERITED
+            0x1CF5,   // 1CF5..1CFF; COMMON
             0x1D00,   // 1D00..1D25; LATIN
             0x1D26,   // 1D26..1D2A; GREEK
             0x1D2B,   // 1D2B..1D2B; CYRILLIC
@@ -3783,7 +3940,8 @@
             0xA980,   // A980..A9FF; JAVANESE
             0xAA00,   // AA00..AA5F; CHAM
             0xAA60,   // AA60..AA7F; MYANMAR
-            0xAA80,   // AA80..AB00; TAI_VIET
+            0xAA80,   // AA80..AADF; TAI_VIET
+            0xAAE0,   // AAE0..AB00; MEETEI_MAYEK
             0xAB01,   // AB01..ABBF; ETHIOPIC
             0xABC0,   // ABC0..ABFF; MEETEI_MAYEK
             0xAC00,   // AC00..D7FB; HANGUL
@@ -3829,7 +3987,9 @@
             0x10800,  // 10800..1083F; CYPRIOT
             0x10840,  // 10840..108FF; IMPERIAL_ARAMAIC
             0x10900,  // 10900..1091F; PHOENICIAN
-            0x10920,  // 10920..109FF; LYDIAN
+            0x10920,  // 10920..1097F; LYDIAN
+            0x10980,  // 10980..1099F; MEROITIC_HIEROGLYPHS
+            0x109A0,  // 109A0..109FF; MEROITIC_CURSIVE
             0x10A00,  // 10A00..10A5F; KHAROSHTHI
             0x10A60,  // 10A60..10AFF; OLD_SOUTH_ARABIAN
             0x10B00,  // 10B00..10B3F; AVESTAN
@@ -3838,10 +3998,15 @@
             0x10C00,  // 10C00..10E5F; OLD_TURKIC
             0x10E60,  // 10E60..10FFF; ARABIC
             0x11000,  // 11000..1107F; BRAHMI
-            0x11080,  // 11080..11FFF; KAITHI
+            0x11080,  // 11080..110CF; KAITHI
+            0x110D0,  // 110D0..110FF; SORA_SOMPENG
+            0x11100,  // 11100..1117F; CHAKMA
+            0x11180,  // 11180..1167F; SHARADA
+            0x11680,  // 11680..116CF; TAKRI
             0x12000,  // 12000..12FFF; CUNEIFORM
             0x13000,  // 13000..167FF; EGYPTIAN_HIEROGLYPHS
             0x16800,  // 16800..16A38; BAMUM
+            0x16F00,  // 16F00..16F9F; MIAO
             0x1B000,  // 1B000..1B000; KATAKANA
             0x1B001,  // 1B001..1CFFF; HIRAGANA
             0x1D000,  // 1D000..1D166; COMMON
@@ -3854,7 +4019,9 @@
             0x1D1AA,  // 1D1AA..1D1AD; INHERITED
             0x1D1AE,  // 1D1AE..1D1FF; COMMON
             0x1D200,  // 1D200..1D2FF; GREEK
-            0x1D300,  // 1D300..1F1FF; COMMON
+            0x1D300,  // 1D300..1EDFF; COMMON
+            0x1EE00,  // 1EE00..1EFFF; ARABIC
+            0x1F000,  // 1F000..1F1FF; COMMON
             0x1F200,  // 1F200..1F200; HIRAGANA
             0x1F201,  // 1F210..1FFFF; COMMON
             0x20000,  // 20000..E0000; HAN
@@ -3927,13 +4094,12 @@
             NKO,
             SAMARITAN,
             MANDAIC,
+            ARABIC,
             DEVANAGARI,
             INHERITED,
             DEVANAGARI,
             COMMON,
             DEVANAGARI,
-            COMMON,
-            DEVANAGARI,
             BENGALI,
             GURMUKHI,
             GUJARATI,
@@ -3985,6 +4151,9 @@
             BATAK,
             LEPCHA,
             OL_CHIKI,
+            SUNDANESE,
+            INHERITED,
+            COMMON,
             INHERITED,
             COMMON,
             INHERITED,
@@ -4094,10 +4263,11 @@
             CHAM,
             MYANMAR,
             TAI_VIET,
+            MEETEI_MAYEK,
             ETHIOPIC,
             MEETEI_MAYEK,
             HANGUL,
-            UNKNOWN,
+            UNKNOWN     ,
             HAN,
             LATIN,
             ARMENIAN,
@@ -4140,6 +4310,8 @@
             IMPERIAL_ARAMAIC,
             PHOENICIAN,
             LYDIAN,
+            MEROITIC_HIEROGLYPHS,
+            MEROITIC_CURSIVE,
             KHAROSHTHI,
             OLD_SOUTH_ARABIAN,
             AVESTAN,
@@ -4149,9 +4321,14 @@
             ARABIC,
             BRAHMI,
             KAITHI,
+            SORA_SOMPENG,
+            CHAKMA,
+            SHARADA,
+            TAKRI,
             CUNEIFORM,
             EGYPTIAN_HIEROGLYPHS,
             BAMUM,
+            MIAO,
             KATAKANA,
             HIRAGANA,
             COMMON,
@@ -4165,6 +4342,8 @@
             COMMON,
             GREEK,
             COMMON,
+            ARABIC,
+            COMMON,
             HIRAGANA,
             COMMON,
             HAN,
@@ -4189,6 +4368,7 @@
             aliases.put("BRAH", BRAHMI);
             aliases.put("BUGI", BUGINESE);
             aliases.put("BUHD", BUHID);
+            aliases.put("CAKM", CHAKMA);
             aliases.put("CANS", CANADIAN_ABORIGINAL);
             aliases.put("CARI", CARIAN);
             aliases.put("CHAM", CHAM);
@@ -4231,6 +4411,8 @@
             aliases.put("LYCI", LYCIAN);
             aliases.put("LYDI", LYDIAN);
             aliases.put("MAND", MANDAIC);
+            aliases.put("MERC", MEROITIC_CURSIVE);
+            aliases.put("MERO", MEROITIC_HIEROGLYPHS);
             aliases.put("MLYM", MALAYALAM);
             aliases.put("MONG", MONGOLIAN);
             aliases.put("MTEI", MEETEI_MAYEK);
@@ -4242,6 +4424,7 @@
             aliases.put("ORYA", ORIYA);
             aliases.put("OSMA", OSMANYA);
             aliases.put("PHAG", PHAGS_PA);
+            aliases.put("PLRD", MIAO);
             aliases.put("PHLI", INSCRIPTIONAL_PAHLAVI);
             aliases.put("PHNX", PHOENICIAN);
             aliases.put("PRTI", INSCRIPTIONAL_PARTHIAN);
@@ -4251,12 +4434,15 @@
             aliases.put("SARB", OLD_SOUTH_ARABIAN);
             aliases.put("SAUR", SAURASHTRA);
             aliases.put("SHAW", SHAVIAN);
+            aliases.put("SHRD", SHARADA);
             aliases.put("SINH", SINHALA);
+            aliases.put("SORA", SORA_SOMPENG);
             aliases.put("SUND", SUNDANESE);
             aliases.put("SYLO", SYLOTI_NAGRI);
             aliases.put("SYRC", SYRIAC);
             aliases.put("TAGB", TAGBANWA);
             aliases.put("TALE", TAI_LE);
+            aliases.put("TAKR", TAKRI);
             aliases.put("TALU", NEW_TAI_LUE);
             aliases.put("TAML", TAMIL);
             aliases.put("TAVT", TAI_VIET);
--- a/src/share/classes/java/lang/ClassLoader.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/lang/ClassLoader.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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
@@ -1847,6 +1847,10 @@
             if (loadLibrary0(fromClass, libfile)) {
                 return;
             }
+            libfile = ClassLoaderHelper.mapAlternativeName(libfile);
+            if (libfile != null && loadLibrary0(fromClass, libfile)) {
+                return;
+            }
         }
         if (loader != null) {
             for (int i = 0 ; i < usr_paths.length ; i++) {
@@ -1855,6 +1859,10 @@
                 if (loadLibrary0(fromClass, libfile)) {
                     return;
                 }
+                libfile = ClassLoaderHelper.mapAlternativeName(libfile);
+                if (libfile != null && loadLibrary0(fromClass, libfile)) {
+                    return;
+                }
             }
         }
         // Oops, it failed
--- a/src/share/classes/java/net/HttpCookie.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/net/HttpCookie.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2012, Oracle and/or its affiliates. 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
@@ -616,9 +616,6 @@
      *   would be accepted.</li>
      *   <li>A Set-Cookie2 with Domain=.com or Domain=.com., will always be
      *   rejected, because there is no embedded dot.</li>
-     *   <li>A Set-Cookie2 with Domain=ajax.com will be accepted, and the
-     *   value for Domain will be taken to be .ajax.com, because a dot
-     *   gets prepended to the value.</li>
      *   <li>A Set-Cookie2 from request-host example for Domain=.local will
      *   be accepted, because the effective host name for the request-
      *   host is example.local, and example.local domain-matches .local.</li>
--- a/src/share/classes/java/nio/file/Files.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/nio/file/Files.java	Tue May 08 07:34:53 2012 -0700
@@ -269,7 +269,7 @@
      *     WritableByteChannel wbc = Files.newByteChannel(path, EnumSet.of(CREATE,APPEND));
      *
      *     // create file with initial permissions, opening it for both reading and writing
-     *     {@code FileAttribute<<SetPosixFilePermission>> perms = ...}
+     *     {@code FileAttribute<Set<PosixFilePermission>> perms = ...}
      *     SeekableByteChannel sbc = Files.newByteChannel(path, EnumSet.of(CREATE_NEW,READ,WRITE), perms);
      * </pre>
      *
--- a/src/share/classes/java/security/CodeSource.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/security/CodeSource.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2012, Oracle and/or its affiliates. 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
@@ -114,7 +114,7 @@
      *
      * @return a hash code value for this object.
      */
-
+    @Override
     public int hashCode() {
         if (location != null)
             return location.hashCode();
@@ -133,6 +133,7 @@
      *
      * @return true if the objects are considered equal, false otherwise.
      */
+    @Override
     public boolean equals(Object obj) {
         if (obj == this)
             return true;
@@ -231,10 +232,10 @@
 
     /**
      * Returns true if this CodeSource object "implies" the specified CodeSource.
-     * <P>
-     * More specifically, this method makes the following checks, in order.
+     * <p>
+     * More specifically, this method makes the following checks.
      * If any fail, it returns false. If they all succeed, it returns true.<p>
-     * <ol>
+     * <ul>
      * <li> <i>codesource</i> must not be null.
      * <li> If this object's certificates are not null, then all
      * of this object's certificates must be present in <i>codesource</i>'s
@@ -242,14 +243,14 @@
      * <li> If this object's location (getLocation()) is not null, then the
      * following checks are made against this object's location and
      * <i>codesource</i>'s:<p>
-     *   <ol>
+     *   <ul>
      *     <li>  <i>codesource</i>'s location must not be null.
      *
      *     <li>  If this object's location
      *           equals <i>codesource</i>'s location, then return true.
      *
      *     <li>  This object's protocol (getLocation().getProtocol()) must be
-     *           equal to <i>codesource</i>'s protocol.
+     *           equal to <i>codesource</i>'s protocol, ignoring case.
      *
      *     <li>  If this object's host (getLocation().getHost()) is not null,
      *           then the SocketPermission
@@ -258,7 +259,8 @@
      *
      *     <li>  If this object's port (getLocation().getPort()) is not
      *           equal to -1 (that is, if a port is specified), it must equal
-     *           <i>codesource</i>'s port.
+     *           <i>codesource</i>'s port or default port
+     *           (codesource.getLocation().getDefaultPort()).
      *
      *     <li>  If this object's file (getLocation().getFile()) doesn't equal
      *           <i>codesource</i>'s file, then the following checks are made:
@@ -275,8 +277,8 @@
      *     <li>  If this object's reference (getLocation().getRef()) is
      *           not null, it must equal <i>codesource</i>'s reference.
      *
-     *   </ol>
-     * </ol>
+     *   </ul>
+     * </ul>
      * <p>
      * For example, the codesource objects with the following locations
      * and null certificates all imply
@@ -369,85 +371,88 @@
      *
      * @param that CodeSource to compare against
      */
-    private boolean matchLocation(CodeSource that)
-        {
-            if (location == null) {
-                return true;
-            }
+    private boolean matchLocation(CodeSource that) {
+        if (location == null)
+            return true;
 
-            if ((that == null) || (that.location == null))
-                return false;
+        if ((that == null) || (that.location == null))
+            return false;
+
+        if (location.equals(that.location))
+            return true;
 
-            if (location.equals(that.location))
-                return true;
+        if (!location.getProtocol().equalsIgnoreCase(that.location.getProtocol()))
+            return false;
 
-            if (!location.getProtocol().equals(that.location.getProtocol()))
+        int thisPort = location.getPort();
+        if (thisPort != -1) {
+            int thatPort = that.location.getPort();
+            int port = thatPort != -1 ? thatPort
+                                      : that.location.getDefaultPort();
+            if (thisPort != port)
                 return false;
-
-            String thisHost = location.getHost();
-            String thatHost = that.location.getHost();
+        }
 
-            if (thisHost != null) {
-                if (("".equals(thisHost) || "localhost".equals(thisHost)) &&
-                    ("".equals(thatHost) || "localhost".equals(thatHost))) {
-                    // ok
-                } else if (!thisHost.equals(thatHost)) {
-                    if (thatHost == null) {
-                        return false;
-                    }
-                    if (this.sp == null) {
-                        this.sp = new SocketPermission(thisHost, "resolve");
-                    }
-                    if (that.sp == null) {
-                        that.sp = new SocketPermission(thatHost, "resolve");
-                    }
-                    if (!this.sp.implies(that.sp)) {
-                        return false;
-                    }
-                }
+        if (location.getFile().endsWith("/-")) {
+            // Matches the directory and (recursively) all files
+            // and subdirectories contained in that directory.
+            // For example, "/a/b/-" implies anything that starts with
+            // "/a/b/"
+            String thisPath = location.getFile().substring(0,
+                                            location.getFile().length()-1);
+            if (!that.location.getFile().startsWith(thisPath))
+                return false;
+        } else if (location.getFile().endsWith("/*")) {
+            // Matches the directory and all the files contained in that
+            // directory.
+            // For example, "/a/b/*" implies anything that starts with
+            // "/a/b/" but has no further slashes
+            int last = that.location.getFile().lastIndexOf('/');
+            if (last == -1)
+                return false;
+            String thisPath = location.getFile().substring(0,
+                                            location.getFile().length()-1);
+            String thatPath = that.location.getFile().substring(0, last+1);
+            if (!thatPath.equals(thisPath))
+                return false;
+        } else {
+            // Exact matches only.
+            // For example, "/a/b" and "/a/b/" both imply "/a/b/"
+            if ((!that.location.getFile().equals(location.getFile()))
+                && (!that.location.getFile().equals(location.getFile()+"/"))) {
+                return false;
             }
-
-            if (location.getPort() != -1) {
-                if (location.getPort() != that.location.getPort())
-                    return false;
-            }
+        }
 
-            if (location.getFile().endsWith("/-")) {
-                // Matches the directory and (recursively) all files
-                // and subdirectories contained in that directory.
-                // For example, "/a/b/-" implies anything that starts with
-                // "/a/b/"
-                String thisPath = location.getFile().substring(0,
-                                                location.getFile().length()-1);
-                if (!that.location.getFile().startsWith(thisPath))
+        if (location.getRef() != null
+            && !location.getRef().equals(that.location.getRef())) {
+            return false;
+        }
+
+        String thisHost = location.getHost();
+        String thatHost = that.location.getHost();
+        if (thisHost != null) {
+            if (("".equals(thisHost) || "localhost".equals(thisHost)) &&
+                ("".equals(thatHost) || "localhost".equals(thatHost))) {
+                // ok
+            } else if (!thisHost.equals(thatHost)) {
+                if (thatHost == null) {
                     return false;
-            } else if (location.getFile().endsWith("/*")) {
-                // Matches the directory and all the files contained in that
-                // directory.
-                // For example, "/a/b/*" implies anything that starts with
-                // "/a/b/" but has no further slashes
-                int last = that.location.getFile().lastIndexOf('/');
-                if (last == -1)
-                    return false;
-                String thisPath = location.getFile().substring(0,
-                                                location.getFile().length()-1);
-                String thatPath = that.location.getFile().substring(0, last+1);
-                if (!thatPath.equals(thisPath))
-                    return false;
-            } else {
-                // Exact matches only.
-                // For example, "/a/b" and "/a/b/" both imply "/a/b/"
-                if ((!that.location.getFile().equals(location.getFile()))
-                && (!that.location.getFile().equals(location.getFile()+"/"))) {
+                }
+                if (this.sp == null) {
+                    this.sp = new SocketPermission(thisHost, "resolve");
+                }
+                if (that.sp == null) {
+                    that.sp = new SocketPermission(thatHost, "resolve");
+                }
+                if (!this.sp.implies(that.sp)) {
                     return false;
                 }
             }
-
-            if (location.getRef() == null)
-                return true;
-            else
-                return location.getRef().equals(that.location.getRef());
         }
+        // everything matches
+        return true;
+    }
 
     /**
      * Returns a string describing this CodeSource, telling its
@@ -455,6 +460,7 @@
      *
      * @return information about this CodeSource.
      */
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
         sb.append("(");
--- a/src/share/classes/java/util/AbstractCollection.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/AbstractCollection.java	Tue May 08 07:34:53 2012 -0700
@@ -170,6 +170,7 @@
      * @throws ArrayStoreException  {@inheritDoc}
      * @throws NullPointerException {@inheritDoc}
      */
+    @SuppressWarnings("unchecked")
     public <T> T[] toArray(T[] a) {
         // Estimate size of array; be prepared to see more or fewer elements
         int size = size();
@@ -180,13 +181,21 @@
 
         for (int i = 0; i < r.length; i++) {
             if (! it.hasNext()) { // fewer elements than expected
-                if (a != r)
+                if (a == r) {
+                    r[i] = null; // null-terminate
+                } else if (a.length < i) {
                     return Arrays.copyOf(r, i);
-                r[i] = null; // null-terminate
-                return r;
+                } else {
+                    System.arraycopy(r, 0, a, 0, i);
+                    if (a.length > i) {
+                        a[i] = null;
+                    }
+                }
+                return a;
             }
             r[i] = (T)it.next();
         }
+        // more elements than expected
         return it.hasNext() ? finishToArray(r, it) : r;
     }
 
@@ -208,6 +217,7 @@
      * @return array containing the elements in the given array, plus any
      *         further elements returned by the iterator, trimmed to size
      */
+    @SuppressWarnings("unchecked")
     private static <T> T[] finishToArray(T[] r, Iterator<?> it) {
         int i = r.length;
         while (it.hasNext()) {
--- a/src/share/classes/java/util/AbstractList.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/AbstractList.java	Tue May 08 07:34:53 2012 -0700
@@ -516,7 +516,7 @@
             return false;
 
         ListIterator<E> e1 = listIterator();
-        ListIterator e2 = ((List) o).listIterator();
+        ListIterator<?> e2 = ((List<?>) o).listIterator();
         while (e1.hasNext() && e2.hasNext()) {
             E o1 = e1.next();
             Object o2 = e2.next();
--- a/src/share/classes/java/util/AbstractMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/AbstractMap.java	Tue May 08 07:34:53 2012 -0700
@@ -443,7 +443,7 @@
 
         if (!(o instanceof Map))
             return false;
-        Map<K,V> m = (Map<K,V>) o;
+        Map<?,?> m = (Map<?,?>) o;
         if (m.size() != size())
             return false;
 
@@ -534,7 +534,7 @@
      * @return a shallow copy of this map
      */
     protected Object clone() throws CloneNotSupportedException {
-        AbstractMap<K,V> result = (AbstractMap<K,V>)super.clone();
+        AbstractMap<?,?> result = (AbstractMap<?,?>)super.clone();
         result.keySet = null;
         result.values = null;
         return result;
@@ -652,7 +652,7 @@
         public boolean equals(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry e = (Map.Entry)o;
+            Map.Entry<?,?> e = (Map.Entry<?,?>)o;
             return eq(key, e.getKey()) && eq(value, e.getValue());
         }
 
@@ -783,7 +783,7 @@
         public boolean equals(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry e = (Map.Entry)o;
+            Map.Entry<?,?> e = (Map.Entry<?,?>)o;
             return eq(key, e.getKey()) && eq(value, e.getValue());
         }
 
--- a/src/share/classes/java/util/AbstractSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/AbstractSet.java	Tue May 08 07:34:53 2012 -0700
@@ -88,7 +88,7 @@
 
         if (!(o instanceof Set))
             return false;
-        Collection c = (Collection) o;
+        Collection<?> c = (Collection<?>) o;
         if (c.size() != size())
             return false;
         try {
--- a/src/share/classes/java/util/ArrayDeque.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/ArrayDeque.java	Tue May 08 07:34:53 2012 -0700
@@ -813,7 +813,8 @@
      */
     public ArrayDeque<E> clone() {
         try {
-            ArrayDeque<E> result = (ArrayDeque<E>) super.clone();
+            @SuppressWarnings("unchecked")
+                ArrayDeque<E> result = (ArrayDeque<E>) super.clone();
             result.elements = Arrays.copyOf(elements, elements.length);
             return result;
 
@@ -849,6 +850,7 @@
     /**
      * Deserialize this deque.
      */
+    @SuppressWarnings("unchecked")
     private void readObject(ObjectInputStream s)
             throws IOException, ClassNotFoundException {
         s.defaultReadObject();
--- a/src/share/classes/java/util/ArrayList.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/ArrayList.java	Tue May 08 07:34:53 2012 -0700
@@ -300,8 +300,7 @@
      */
     public Object clone() {
         try {
-            @SuppressWarnings("unchecked")
-                ArrayList<E> v = (ArrayList<E>) super.clone();
+            ArrayList<?> v = (ArrayList<?>) super.clone();
             v.elementData = Arrays.copyOf(elementData, size);
             v.modCount = 0;
             return v;
--- a/src/share/classes/java/util/Arrays.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Arrays.java	Tue May 08 07:34:53 2012 -0700
@@ -560,6 +560,7 @@
      * off is the offset to generate corresponding low, high in src
      * To be removed in a future release.
      */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     private static void mergeSort(Object[] src,
                                   Object[] dest,
                                   int low,
@@ -746,6 +747,7 @@
      * off is the offset into src corresponding to low in dest
      * To be removed in a future release.
      */
+    @SuppressWarnings({ "rawtypes", "unchecked" })
     private static void mergeSort(Object[] src,
                                   Object[] dest,
                                   int low, int high, int off,
@@ -1477,8 +1479,10 @@
 
         while (low <= high) {
             int mid = (low + high) >>> 1;
-            Comparable midVal = (Comparable)a[mid];
-            int cmp = midVal.compareTo(key);
+            @SuppressWarnings("rawtypes")
+                Comparable midVal = (Comparable)a[mid];
+            @SuppressWarnings("unchecked")
+                int cmp = midVal.compareTo(key);
 
             if (cmp < 0)
                 low = mid + 1;
@@ -2215,6 +2219,7 @@
      * @throws NullPointerException if <tt>original</tt> is null
      * @since 1.6
      */
+    @SuppressWarnings("unchecked")
     public static <T> T[] copyOf(T[] original, int newLength) {
         return (T[]) copyOf(original, newLength, original.getClass());
     }
@@ -2242,6 +2247,7 @@
      * @since 1.6
      */
     public static <T,U> T[] copyOf(U[] original, int newLength, Class<? extends T[]> newType) {
+        @SuppressWarnings("unchecked")
         T[] copy = ((Object)newType == (Object)Object[].class)
             ? (T[]) new Object[newLength]
             : (T[]) Array.newInstance(newType.getComponentType(), newLength);
@@ -2470,8 +2476,9 @@
      * @throws NullPointerException if <tt>original</tt> is null
      * @since 1.6
      */
+    @SuppressWarnings("unchecked")
     public static <T> T[] copyOfRange(T[] original, int from, int to) {
-        return copyOfRange(original, from, to, (Class<T[]>) original.getClass());
+        return copyOfRange(original, from, to, (Class<? extends T[]>) original.getClass());
     }
 
     /**
@@ -2509,6 +2516,7 @@
         int newLength = to - from;
         if (newLength < 0)
             throw new IllegalArgumentException(from + " > " + to);
+        @SuppressWarnings("unchecked")
         T[] copy = ((Object)newType == (Object)Object[].class)
             ? (T[]) new Object[newLength]
             : (T[]) Array.newInstance(newType.getComponentType(), newLength);
@@ -2851,6 +2859,7 @@
             return a.clone();
         }
 
+        @SuppressWarnings("unchecked")
         public <T> T[] toArray(T[] a) {
             int size = size();
             if (a.length < size)
@@ -3634,7 +3643,7 @@
             if (element == null) {
                 buf.append("null");
             } else {
-                Class eClass = element.getClass();
+                Class<?> eClass = element.getClass();
 
                 if (eClass.isArray()) {
                     if (eClass == byte[].class)
--- a/src/share/classes/java/util/Calendar.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Calendar.java	Tue May 08 07:34:53 2012 -0700
@@ -840,7 +840,7 @@
      * of a Locale.
      */
     private static final ConcurrentMap<Locale, int[]> cachedLocaleData
-        = new ConcurrentHashMap<Locale, int[]>(3);
+        = new ConcurrentHashMap<>(3);
 
     // Special values of stamp[]
     /**
@@ -1499,7 +1499,7 @@
         DateFormatSymbols symbols = DateFormatSymbols.getInstance(locale);
         String[] strings = getFieldStrings(field, style, symbols);
         if (strings != null) {
-            Map<String,Integer> names = new HashMap<String,Integer>();
+            Map<String,Integer> names = new HashMap<>();
             for (int i = 0; i < strings.length; i++) {
                 if (strings[i].length() == 0) {
                     continue;
--- a/src/share/classes/java/util/Collections.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Collections.java	Tue May 08 07:34:53 2012 -0700
@@ -150,6 +150,7 @@
      *         detects that the natural ordering of the list elements is
      *         found to violate the {@link Comparable} contract
      */
+    @SuppressWarnings("unchecked")
     public static <T extends Comparable<? super T>> void sort(List<T> list) {
         Object[] a = list.toArray();
         Arrays.sort(a);
@@ -212,13 +213,14 @@
      * @throws IllegalArgumentException (optional) if the comparator is
      *         found to violate the {@link Comparator} contract
      */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     public static <T> void sort(List<T> list, Comparator<? super T> c) {
         Object[] a = list.toArray();
         Arrays.sort(a, (Comparator)c);
-        ListIterator i = list.listIterator();
+        ListIterator<T> i = list.listIterator();
         for (int j=0; j<a.length; j++) {
             i.next();
-            i.set(a[j]);
+            i.set((T)a[j]);
         }
     }
 
@@ -357,9 +359,10 @@
      *         or the search key is not mutually comparable with the
      *         elements of the list using this comparator.
      */
+    @SuppressWarnings("unchecked")
     public static <T> int binarySearch(List<? extends T> list, T key, Comparator<? super T> c) {
         if (c==null)
-            return binarySearch((List) list, key);
+            return binarySearch((List<? extends Comparable<? super T>>) list, key);
 
         if (list instanceof RandomAccess || list.size()<BINARYSEARCH_THRESHOLD)
             return Collections.indexedBinarySearch(list, key, c);
@@ -406,9 +409,6 @@
         return -(low + 1);  // key not found
     }
 
-    private interface SelfComparable extends Comparable<SelfComparable> {}
-
-
     /**
      * Reverses the order of the elements in the specified list.<p>
      *
@@ -418,12 +418,16 @@
      * @throws UnsupportedOperationException if the specified list or
      *         its list-iterator does not support the <tt>set</tt> operation.
      */
+    @SuppressWarnings({ "rawtypes", "unchecked" })
     public static void reverse(List<?> list) {
         int size = list.size();
         if (size < REVERSE_THRESHOLD || list instanceof RandomAccess) {
             for (int i=0, mid=size>>1, j=size-1; i<mid; i++, j--)
                 swap(list, i, j);
         } else {
+            // instead of using a raw type here, it's possible to capture
+            // the wildcard but it will require a call to a supplementary
+            // private method
             ListIterator fwd = list.listIterator();
             ListIterator rev = list.listIterator(size);
             for (int i=0, mid=list.size()>>1; i<mid; i++) {
@@ -493,6 +497,7 @@
      * @throws UnsupportedOperationException if the specified list or its
      *         list-iterator does not support the <tt>set</tt> operation.
      */
+    @SuppressWarnings({ "rawtypes", "unchecked" })
     public static void shuffle(List<?> list, Random rnd) {
         int size = list.size();
         if (size < SHUFFLE_THRESHOLD || list instanceof RandomAccess) {
@@ -506,6 +511,9 @@
                 swap(arr, i-1, rnd.nextInt(i));
 
             // Dump array back into list
+            // instead of using a raw type here, it's possible to capture
+            // the wildcard but it will require a call to a supplementary
+            // private method
             ListIterator it = list.listIterator();
             for (int i=0; i<arr.length; i++) {
                 it.next();
@@ -527,7 +535,11 @@
      *         || j &lt; 0 || j &gt;= list.size()).
      * @since 1.4
      */
+    @SuppressWarnings({ "rawtypes", "unchecked" })
     public static void swap(List<?> list, int i, int j) {
+        // instead of using a raw type here, it's possible to capture
+        // the wildcard but it will require a call to a supplementary
+        // private method
         final List l = list;
         l.set(i, l.set(j, l.get(i)));
     }
@@ -657,9 +669,10 @@
      * @throws NoSuchElementException if the collection is empty.
      * @see Comparable
      */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     public static <T> T min(Collection<? extends T> coll, Comparator<? super T> comp) {
         if (comp==null)
-            return (T)min((Collection<SelfComparable>) (Collection) coll);
+            return (T)min((Collection) coll);
 
         Iterator<? extends T> i = coll.iterator();
         T candidate = i.next();
@@ -727,9 +740,10 @@
      * @throws NoSuchElementException if the collection is empty.
      * @see Comparable
      */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     public static <T> T max(Collection<? extends T> coll, Comparator<? super T> comp) {
         if (comp==null)
-            return (T)max((Collection<SelfComparable>) (Collection) coll);
+            return (T)max((Collection) coll);
 
         Iterator<? extends T> i = coll.iterator();
         T candidate = i.next();
@@ -1389,7 +1403,9 @@
             extends UnmodifiableSet<Map.Entry<K,V>> {
             private static final long serialVersionUID = 7854390611657943733L;
 
+            @SuppressWarnings({ "unchecked", "rawtypes" })
             UnmodifiableEntrySet(Set<? extends Map.Entry<? extends K, ? extends V>> s) {
+                // Need to cast to raw in order to work around a limitation in the type system
                 super((Set)s);
             }
             public Iterator<Map.Entry<K,V>> iterator() {
@@ -1408,13 +1424,15 @@
                 };
             }
 
+            @SuppressWarnings("unchecked")
             public Object[] toArray() {
                 Object[] a = c.toArray();
                 for (int i=0; i<a.length; i++)
-                    a[i] = new UnmodifiableEntry<>((Map.Entry<K,V>)a[i]);
+                    a[i] = new UnmodifiableEntry<>((Map.Entry<? extends K, ? extends V>)a[i]);
                 return a;
             }
 
+            @SuppressWarnings("unchecked")
             public <T> T[] toArray(T[] a) {
                 // We don't pass a to c.toArray, to avoid window of
                 // vulnerability wherein an unscrupulous multithreaded client
@@ -1422,7 +1440,7 @@
                 Object[] arr = c.toArray(a.length==0 ? a : Arrays.copyOf(a, 0));
 
                 for (int i=0; i<arr.length; i++)
-                    arr[i] = new UnmodifiableEntry<>((Map.Entry<K,V>)arr[i]);
+                    arr[i] = new UnmodifiableEntry<>((Map.Entry<? extends K, ? extends V>)arr[i]);
 
                 if (arr.length > a.length)
                     return (T[])arr;
@@ -1464,7 +1482,7 @@
 
                 if (!(o instanceof Set))
                     return false;
-                Set s = (Set) o;
+                Set<?> s = (Set<?>) o;
                 if (s.size() != c.size())
                     return false;
                 return containsAll(s); // Invokes safe containsAll() above
@@ -1493,7 +1511,7 @@
                         return true;
                     if (!(o instanceof Map.Entry))
                         return false;
-                    Map.Entry t = (Map.Entry)o;
+                    Map.Entry<?,?> t = (Map.Entry<?,?>)o;
                     return eq(e.getKey(),   t.getKey()) &&
                            eq(e.getValue(), t.getValue());
                 }
--- a/src/share/classes/java/util/ComparableTimSort.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/ComparableTimSort.java	Tue May 08 07:34:53 2012 -0700
@@ -114,7 +114,6 @@
 
         // Allocate temp storage (which may be increased later if necessary)
         int len = a.length;
-        @SuppressWarnings({"unchecked", "UnnecessaryLocalVariable"})
         Object[] newArray = new Object[len < 2 * INITIAL_TMP_STORAGE_LENGTH ?
                                        len >>> 1 : INITIAL_TMP_STORAGE_LENGTH];
         tmp = newArray;
@@ -209,14 +208,13 @@
      * @param start the index of the first element in the range that is
      *        not already known to be sorted ({@code lo <= start <= hi})
      */
-    @SuppressWarnings("fallthrough")
+    @SuppressWarnings({ "fallthrough", "rawtypes", "unchecked" })
     private static void binarySort(Object[] a, int lo, int hi, int start) {
         assert lo <= start && start <= hi;
         if (start == lo)
             start++;
         for ( ; start < hi; start++) {
-            @SuppressWarnings("unchecked")
-            Comparable<Object> pivot = (Comparable) a[start];
+            Comparable pivot = (Comparable) a[start];
 
             // Set left (and right) to the index where a[start] (pivot) belongs
             int left = lo;
@@ -279,7 +277,7 @@
      * @return  the length of the run beginning at the specified position in
      *          the specified array
      */
-    @SuppressWarnings("unchecked")
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     private static int countRunAndMakeAscending(Object[] a, int lo, int hi) {
         assert lo < hi;
         int runHi = lo + 1;
@@ -614,7 +612,7 @@
      *        (must be aBase + aLen)
      * @param len2  length of second run to be merged (must be > 0)
      */
-    @SuppressWarnings("unchecked")
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     private void mergeLo(int base1, int len1, int base2, int len2) {
         assert len1 > 0 && len2 > 0 && base1 + len1 == base2;
 
@@ -731,7 +729,7 @@
      *        (must be aBase + aLen)
      * @param len2  length of second run to be merged (must be > 0)
      */
-    @SuppressWarnings("unchecked")
+    @SuppressWarnings({ "unchecked", "rawtypes" })
     private void mergeHi(int base1, int len1, int base2, int len2) {
         assert len1 > 0 && len2 > 0 && base1 + len1 == base2;
 
@@ -865,7 +863,6 @@
             else
                 newSize = Math.min(newSize, a.length >>> 1);
 
-            @SuppressWarnings({"unchecked", "UnnecessaryLocalVariable"})
             Object[] newArray = new Object[newSize];
             tmp = newArray;
         }
--- a/src/share/classes/java/util/Currency.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Currency.java	Tue May 08 07:34:53 2012 -0700
@@ -286,46 +286,47 @@
 
     private static Currency getInstance(String currencyCode, int defaultFractionDigits,
         int numericCode) {
-            // Try to look up the currency code in the instances table.
-            // This does the null pointer check as a side effect.
-            // Also, if there already is an entry, the currencyCode must be valid.
-            Currency instance = instances.get(currencyCode);
-            if (instance != null) {
-                return instance;
+        // Try to look up the currency code in the instances table.
+        // This does the null pointer check as a side effect.
+        // Also, if there already is an entry, the currencyCode must be valid.
+        Currency instance = instances.get(currencyCode);
+        if (instance != null) {
+            return instance;
+        }
+
+        if (defaultFractionDigits == Integer.MIN_VALUE) {
+            // Currency code not internally generated, need to verify first
+            // A currency code must have 3 characters and exist in the main table
+            // or in the list of other currencies.
+            if (currencyCode.length() != 3) {
+                throw new IllegalArgumentException();
             }
-
-            if (defaultFractionDigits == Integer.MIN_VALUE) {
-                // Currency code not internally generated, need to verify first
-                // A currency code must have 3 characters and exist in the main table
-                // or in the list of other currencies.
-                if (currencyCode.length() != 3) {
+            char char1 = currencyCode.charAt(0);
+            char char2 = currencyCode.charAt(1);
+            int tableEntry = getMainTableEntry(char1, char2);
+            if ((tableEntry & COUNTRY_TYPE_MASK) == SIMPLE_CASE_COUNTRY_MASK
+                    && tableEntry != INVALID_COUNTRY_ENTRY
+                    && currencyCode.charAt(2) - 'A' == (tableEntry & SIMPLE_CASE_COUNTRY_FINAL_CHAR_MASK)) {
+                defaultFractionDigits = (tableEntry & SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_MASK) >> SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_SHIFT;
+                numericCode = (tableEntry & NUMERIC_CODE_MASK) >> NUMERIC_CODE_SHIFT;
+            } else {
+                // Check for '-' separately so we don't get false hits in the table.
+                if (currencyCode.charAt(2) == '-') {
                     throw new IllegalArgumentException();
                 }
-                char char1 = currencyCode.charAt(0);
-                char char2 = currencyCode.charAt(1);
-                int tableEntry = getMainTableEntry(char1, char2);
-                if ((tableEntry & COUNTRY_TYPE_MASK) == SIMPLE_CASE_COUNTRY_MASK
-                        && tableEntry != INVALID_COUNTRY_ENTRY
-                        && currencyCode.charAt(2) - 'A' == (tableEntry & SIMPLE_CASE_COUNTRY_FINAL_CHAR_MASK)) {
-                    defaultFractionDigits = (tableEntry & SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_MASK) >> SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_SHIFT;
-                    numericCode = (tableEntry & NUMERIC_CODE_MASK) >> NUMERIC_CODE_SHIFT;
-                } else {
-                    // Check for '-' separately so we don't get false hits in the table.
-                    if (currencyCode.charAt(2) == '-') {
-                        throw new IllegalArgumentException();
-                    }
-                    int index = otherCurrencies.indexOf(currencyCode);
-                    if (index == -1) {
-                        throw new IllegalArgumentException();
-                    }
-                    defaultFractionDigits = otherCurrenciesDFD[index / 4];
-                    numericCode = otherCurrenciesNumericCode[index / 4];
+                int index = otherCurrencies.indexOf(currencyCode);
+                if (index == -1) {
+                    throw new IllegalArgumentException();
                 }
+                defaultFractionDigits = otherCurrenciesDFD[index / 4];
+                numericCode = otherCurrenciesNumericCode[index / 4];
             }
+        }
 
-        instance = instances.putIfAbsent(currencyCode,
-                   new Currency(currencyCode, defaultFractionDigits, numericCode));
-        return (instance != null ? instance : instances.get(currencyCode));
+        Currency currencyVal =
+            new Currency(currencyCode, defaultFractionDigits, numericCode);
+        instance = instances.putIfAbsent(currencyCode, currencyVal);
+        return (instance != null ? instance : currencyVal);
     }
 
     /**
@@ -403,7 +404,7 @@
     public static Set<Currency> getAvailableCurrencies() {
         synchronized(Currency.class) {
             if (available == null) {
-                available = new HashSet<Currency>(256);
+                available = new HashSet<>(256);
 
                 // Add simple currencies first
                 for (char c1 = 'A'; c1 <= 'Z'; c1 ++) {
--- a/src/share/classes/java/util/EnumMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/EnumMap.java	Tue May 08 07:34:53 2012 -0700
@@ -120,11 +120,12 @@
         return (value == null ? NULL : value);
     }
 
+    @SuppressWarnings("unchecked")
     private V unmaskNull(Object value) {
-        return (V) (value == NULL ? null : value);
+        return (V)(value == NULL ? null : value);
     }
 
-    private static final Enum[] ZERO_LENGTH_ENUM_ARRAY = new Enum[0];
+    private static final Enum<?>[] ZERO_LENGTH_ENUM_ARRAY = new Enum<?>[0];
 
     /**
      * Creates an empty enum map with the specified key type.
@@ -218,12 +219,12 @@
      *            key
      */
     public boolean containsKey(Object key) {
-        return isValidKey(key) && vals[((Enum)key).ordinal()] != null;
+        return isValidKey(key) && vals[((Enum<?>)key).ordinal()] != null;
     }
 
     private boolean containsMapping(Object key, Object value) {
         return isValidKey(key) &&
-            maskNull(value).equals(vals[((Enum)key).ordinal()]);
+            maskNull(value).equals(vals[((Enum<?>)key).ordinal()]);
     }
 
     /**
@@ -243,7 +244,7 @@
      */
     public V get(Object key) {
         return (isValidKey(key) ?
-                unmaskNull(vals[((Enum)key).ordinal()]) : null);
+                unmaskNull(vals[((Enum<?>)key).ordinal()]) : null);
     }
 
     // Modification Operations
@@ -285,7 +286,7 @@
     public V remove(Object key) {
         if (!isValidKey(key))
             return null;
-        int index = ((Enum)key).ordinal();
+        int index = ((Enum<?>)key).ordinal();
         Object oldValue = vals[index];
         vals[index] = null;
         if (oldValue != null)
@@ -296,7 +297,7 @@
     private boolean removeMapping(Object key, Object value) {
         if (!isValidKey(key))
             return false;
-        int index = ((Enum)key).ordinal();
+        int index = ((Enum<?>)key).ordinal();
         if (maskNull(value).equals(vals[index])) {
             vals[index] = null;
             size--;
@@ -314,7 +315,7 @@
             return false;
 
         // Cheaper than instanceof Enum followed by getDeclaringClass
-        Class keyClass = key.getClass();
+        Class<?> keyClass = key.getClass();
         return keyClass == keyType || keyClass.getSuperclass() == keyType;
     }
 
@@ -331,8 +332,7 @@
      */
     public void putAll(Map<? extends K, ? extends V> m) {
         if (m instanceof EnumMap) {
-            EnumMap<? extends K, ? extends V> em =
-                (EnumMap<? extends K, ? extends V>)m;
+            EnumMap<?, ?> em = (EnumMap<?, ?>)m;
             if (em.keyType != keyType) {
                 if (em.isEmpty())
                     return;
@@ -476,13 +476,13 @@
         public boolean contains(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry entry = (Map.Entry)o;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>)o;
             return containsMapping(entry.getKey(), entry.getValue());
         }
         public boolean remove(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry entry = (Map.Entry)o;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>)o;
             return removeMapping(entry.getKey(), entry.getValue());
         }
         public int size() {
@@ -610,7 +610,7 @@
                 if (!(o instanceof Map.Entry))
                     return false;
 
-                Map.Entry e = (Map.Entry)o;
+                Map.Entry<?,?> e = (Map.Entry<?,?>)o;
                 V ourValue = unmaskNull(vals[index]);
                 Object hisValue = e.getValue();
                 return (e.getKey() == keyUniverse[index] &&
@@ -655,11 +655,11 @@
         if (this == o)
             return true;
         if (o instanceof EnumMap)
-            return equals((EnumMap)o);
+            return equals((EnumMap<?,?>)o);
         if (!(o instanceof Map))
             return false;
 
-        Map<K,V> m = (Map<K,V>)o;
+        Map<?,?> m = (Map<?,?>)o;
         if (size != m.size())
             return false;
 
@@ -680,7 +680,7 @@
         return true;
     }
 
-    private boolean equals(EnumMap em) {
+    private boolean equals(EnumMap<?,?> em) {
         if (em.keyType != keyType)
             return size == 0 && em.size == 0;
 
@@ -721,6 +721,7 @@
      *
      * @return a shallow copy of this enum map
      */
+    @SuppressWarnings("unchecked")
     public EnumMap<K, V> clone() {
         EnumMap<K, V> result = null;
         try {
@@ -736,7 +737,7 @@
      * Throws an exception if e is not of the correct type for this enum set.
      */
     private void typeCheck(K key) {
-        Class keyClass = key.getClass();
+        Class<?> keyClass = key.getClass();
         if (keyClass != keyType && keyClass.getSuperclass() != keyType)
             throw new ClassCastException(keyClass + " != " + keyType);
     }
@@ -785,6 +786,7 @@
      * Reconstitute the <tt>EnumMap</tt> instance from a stream (i.e.,
      * deserialize it).
      */
+    @SuppressWarnings("unchecked")
     private void readObject(java.io.ObjectInputStream s)
         throws java.io.IOException, ClassNotFoundException
     {
--- a/src/share/classes/java/util/EnumSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/EnumSet.java	Tue May 08 07:34:53 2012 -0700
@@ -88,11 +88,11 @@
     /**
      * All of the values comprising T.  (Cached for performance.)
      */
-    final Enum[] universe;
+    final Enum<?>[] universe;
 
-    private static Enum[] ZERO_LENGTH_ENUM_ARRAY = new Enum[0];
+    private static Enum<?>[] ZERO_LENGTH_ENUM_ARRAY = new Enum<?>[0];
 
-    EnumSet(Class<E>elementType, Enum[] universe) {
+    EnumSet(Class<E>elementType, Enum<?>[] universe) {
         this.elementType = elementType;
         this.universe    = universe;
     }
@@ -105,7 +105,7 @@
      * @throws NullPointerException if <tt>elementType</tt> is null
      */
     public static <E extends Enum<E>> EnumSet<E> noneOf(Class<E> elementType) {
-        Enum[] universe = getUniverse(elementType);
+        Enum<?>[] universe = getUniverse(elementType);
         if (universe == null)
             throw new ClassCastException(elementType + " not an enum");
 
@@ -358,6 +358,7 @@
      *
      * @return a copy of this set
      */
+    @SuppressWarnings("unchecked")
     public EnumSet<E> clone() {
         try {
             return (EnumSet<E>) super.clone();
@@ -375,7 +376,7 @@
      * Throws an exception if e is not of the correct type for this enum set.
      */
     final void typeCheck(E e) {
-        Class eClass = e.getClass();
+        Class<?> eClass = e.getClass();
         if (eClass != elementType && eClass.getSuperclass() != elementType)
             throw new ClassCastException(eClass + " != " + elementType);
     }
@@ -413,16 +414,19 @@
          *
          * @serial
          */
-        private final Enum[] elements;
+        private final Enum<?>[] elements;
 
         SerializationProxy(EnumSet<E> set) {
             elementType = set.elementType;
             elements = set.toArray(ZERO_LENGTH_ENUM_ARRAY);
         }
 
+        // instead of cast to E, we should perhaps use elementType.cast()
+        // to avoid injection of forged stream, but it will slow the implementation
+        @SuppressWarnings("unchecked")
         private Object readResolve() {
             EnumSet<E> result = EnumSet.noneOf(elementType);
-            for (Enum e : elements)
+            for (Enum<?> e : elements)
                 result.add((E)e);
             return result;
         }
--- a/src/share/classes/java/util/HashMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/HashMap.java	Tue May 08 07:34:53 2012 -0700
@@ -146,7 +146,7 @@
     /**
      * The table, resized as necessary. Length MUST Always be a power of two.
      */
-    transient Entry[] table;
+    transient Entry<?,?>[] table;
 
     /**
      * The number of key-value mappings contained in this map.
@@ -311,16 +311,17 @@
      *
      * @see #put(Object, Object)
      */
+    @SuppressWarnings("unchecked")
     public V get(Object key) {
         if (key == null)
-            return getForNullKey();
+            return (V)getForNullKey();
         int hash = hash(key.hashCode());
-        for (Entry<K,V> e = table[indexFor(hash, table.length)];
+        for (Entry<?,?> e = table[indexFor(hash, table.length)];
              e != null;
              e = e.next) {
             Object k;
             if (e.hash == hash && ((k = e.key) == key || key.equals(k)))
-                return e.value;
+                return (V)e.value;
         }
         return null;
     }
@@ -332,8 +333,8 @@
      * operations (get and put), but incorporated with conditionals in
      * others.
      */
-    private V getForNullKey() {
-        for (Entry<K,V> e = table[0]; e != null; e = e.next) {
+    private Object getForNullKey() {
+        for (Entry<?,?> e = table[0]; e != null; e = e.next) {
             if (e.key == null)
                 return e.value;
         }
@@ -357,15 +358,16 @@
      * HashMap.  Returns null if the HashMap contains no mapping
      * for the key.
      */
+    @SuppressWarnings("unchecked")
     final Entry<K,V> getEntry(Object key) {
         int hash = (key == null) ? 0 : hash(key.hashCode());
-        for (Entry<K,V> e = table[indexFor(hash, table.length)];
+        for (Entry<?,?> e = table[indexFor(hash, table.length)];
              e != null;
              e = e.next) {
             Object k;
             if (e.hash == hash &&
                 ((k = e.key) == key || (key != null && key.equals(k))))
-                return e;
+                return (Entry<K,V>)e;
         }
         return null;
     }
@@ -388,7 +390,9 @@
             return putForNullKey(value);
         int hash = hash(key.hashCode());
         int i = indexFor(hash, table.length);
-        for (Entry<K,V> e = table[i]; e != null; e = e.next) {
+        @SuppressWarnings("unchecked")
+        Entry<K,V> e = (Entry<K,V>)table[i];
+        for(; e != null; e = e.next) {
             Object k;
             if (e.hash == hash && ((k = e.key) == key || key.equals(k))) {
                 V oldValue = e.value;
@@ -407,7 +411,9 @@
      * Offloaded version of put for null keys
      */
     private V putForNullKey(V value) {
-        for (Entry<K,V> e = table[0]; e != null; e = e.next) {
+        @SuppressWarnings("unchecked")
+        Entry<K,V> e = (Entry<K,V>)table[0];
+        for(; e != null; e = e.next) {
             if (e.key == null) {
                 V oldValue = e.value;
                 e.value = value;
@@ -435,7 +441,8 @@
          * clone or deserialize.  It will only happen for construction if the
          * input Map is a sorted map whose ordering is inconsistent w/ equals.
          */
-        for (Entry<K,V> e = table[i]; e != null; e = e.next) {
+        for (@SuppressWarnings("unchecked")
+             Entry<?,V> e = (Entry<?,V>)table[i]; e != null; e = e.next) {
             Object k;
             if (e.hash == hash &&
                 ((k = e.key) == key || (key != null && key.equals(k)))) {
@@ -467,14 +474,14 @@
      *        is irrelevant).
      */
     void resize(int newCapacity) {
-        Entry[] oldTable = table;
+        Entry<?,?>[] oldTable = table;
         int oldCapacity = oldTable.length;
         if (oldCapacity == MAXIMUM_CAPACITY) {
             threshold = Integer.MAX_VALUE;
             return;
         }
 
-        Entry[] newTable = new Entry[newCapacity];
+        Entry<?,?>[] newTable = new Entry<?,?>[newCapacity];
         transfer(newTable);
         table = newTable;
         threshold = (int)(newCapacity * loadFactor);
@@ -483,17 +490,18 @@
     /**
      * Transfers all entries from current table to newTable.
      */
-    void transfer(Entry[] newTable) {
-        Entry[] src = table;
+    @SuppressWarnings("unchecked")
+    void transfer(Entry<?,?>[] newTable) {
+        Entry<?,?>[] src = table;
         int newCapacity = newTable.length;
         for (int j = 0; j < src.length; j++) {
-            Entry<K,V> e = src[j];
+            Entry<K,V> e = (Entry<K,V>)src[j];
             if (e != null) {
                 src[j] = null;
                 do {
                     Entry<K,V> next = e.next;
                     int i = indexFor(e.hash, newCapacity);
-                    e.next = newTable[i];
+                    e.next = (Entry<K,V>)newTable[i];
                     newTable[i] = e;
                     e = next;
                 } while (e != null);
@@ -560,7 +568,8 @@
     final Entry<K,V> removeEntryForKey(Object key) {
         int hash = (key == null) ? 0 : hash(key.hashCode());
         int i = indexFor(hash, table.length);
-        Entry<K,V> prev = table[i];
+        @SuppressWarnings("unchecked")
+            Entry<K,V> prev = (Entry<K,V>)table[i];
         Entry<K,V> e = prev;
 
         while (e != null) {
@@ -591,11 +600,12 @@
         if (!(o instanceof Map.Entry))
             return null;
 
-        Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
+        Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
         Object key = entry.getKey();
         int hash = (key == null) ? 0 : hash(key.hashCode());
         int i = indexFor(hash, table.length);
-        Entry<K,V> prev = table[i];
+        @SuppressWarnings("unchecked")
+            Entry<K,V> prev = (Entry<K,V>)table[i];
         Entry<K,V> e = prev;
 
         while (e != null) {
@@ -623,7 +633,7 @@
      */
     public void clear() {
         modCount++;
-        Entry[] tab = table;
+        Entry<?,?>[] tab = table;
         for (int i = 0; i < tab.length; i++)
             tab[i] = null;
         size = 0;
@@ -641,9 +651,9 @@
         if (value == null)
             return containsNullValue();
 
-        Entry[] tab = table;
+        Entry<?,?>[] tab = table;
         for (int i = 0; i < tab.length ; i++)
-            for (Entry e = tab[i] ; e != null ; e = e.next)
+            for (Entry<?,?> e = tab[i] ; e != null ; e = e.next)
                 if (value.equals(e.value))
                     return true;
         return false;
@@ -653,9 +663,9 @@
      * Special-case code for containsValue with null argument
      */
     private boolean containsNullValue() {
-        Entry[] tab = table;
+        Entry<?,?>[] tab = table;
         for (int i = 0; i < tab.length ; i++)
-            for (Entry e = tab[i] ; e != null ; e = e.next)
+            for (Entry<?,?> e = tab[i] ; e != null ; e = e.next)
                 if (e.value == null)
                     return true;
         return false;
@@ -667,6 +677,7 @@
      *
      * @return a shallow copy of this map
      */
+    @SuppressWarnings("unchecked")
     public Object clone() {
         HashMap<K,V> result = null;
         try {
@@ -674,7 +685,7 @@
         } catch (CloneNotSupportedException e) {
             // assert false;
         }
-        result.table = new Entry[table.length];
+        result.table = new Entry<?,?>[table.length];
         result.entrySet = null;
         result.modCount = 0;
         result.size = 0;
@@ -717,7 +728,7 @@
         public final boolean equals(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry e = (Map.Entry)o;
+            Map.Entry<?,?> e = (Map.Entry<?,?>)o;
             Object k1 = getKey();
             Object k2 = e.getKey();
             if (k1 == k2 || (k1 != null && k1.equals(k2))) {
@@ -762,7 +773,8 @@
      * Subclass overrides this to alter the behavior of put method.
      */
     void addEntry(int hash, K key, V value, int bucketIndex) {
-        Entry<K,V> e = table[bucketIndex];
+        @SuppressWarnings("unchecked")
+            Entry<K,V> e = (Entry<K,V>)table[bucketIndex];
         table[bucketIndex] = new Entry<>(hash, key, value, e);
         if (size++ >= threshold)
             resize(2 * table.length);
@@ -777,21 +789,22 @@
      * clone, and readObject.
      */
     void createEntry(int hash, K key, V value, int bucketIndex) {
-        Entry<K,V> e = table[bucketIndex];
+        @SuppressWarnings("unchecked")
+            Entry<K,V> e = (Entry<K,V>)table[bucketIndex];
         table[bucketIndex] = new Entry<>(hash, key, value, e);
         size++;
     }
 
     private abstract class HashIterator<E> implements Iterator<E> {
-        Entry<K,V> next;        // next entry to return
+        Entry<?,?> next;        // next entry to return
         int expectedModCount;   // For fast-fail
         int index;              // current slot
-        Entry<K,V> current;     // current entry
+        Entry<?,?> current;     // current entry
 
         HashIterator() {
             expectedModCount = modCount;
             if (size > 0) { // advance to first entry
-                Entry[] t = table;
+                Entry<?,?>[] t = table;
                 while (index < t.length && (next = t[index++]) == null)
                     ;
             }
@@ -801,20 +814,21 @@
             return next != null;
         }
 
+        @SuppressWarnings("unchecked")
         final Entry<K,V> nextEntry() {
             if (modCount != expectedModCount)
                 throw new ConcurrentModificationException();
-            Entry<K,V> e = next;
+            Entry<?,?> e = next;
             if (e == null)
                 throw new NoSuchElementException();
 
             if ((next = e.next) == null) {
-                Entry[] t = table;
+                Entry<?,?>[] t = table;
                 while (index < t.length && (next = t[index++]) == null)
                     ;
             }
             current = e;
-            return e;
+            return (Entry<K,V>)e;
         }
 
         public void remove() {
@@ -965,7 +979,7 @@
         public boolean contains(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry<K,V> e = (Map.Entry<K,V>) o;
+            Map.Entry<?,?> e = (Map.Entry<?,?>) o;
             Entry<K,V> candidate = getEntry(e.getKey());
             return candidate != null && candidate.equals(e);
         }
@@ -1039,8 +1053,10 @@
 
         // Read the keys and values, and put the mappings in the HashMap
         for (int i=0; i<size; i++) {
-            K key = (K) s.readObject();
-            V value = (V) s.readObject();
+            @SuppressWarnings("unchecked")
+                K key = (K) s.readObject();
+            @SuppressWarnings("unchecked")
+                V value = (V) s.readObject();
             putForCreate(key, value);
         }
     }
--- a/src/share/classes/java/util/HashSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/HashSet.java	Tue May 08 07:34:53 2012 -0700
@@ -247,6 +247,7 @@
      *
      * @return a shallow copy of this set
      */
+    @SuppressWarnings("unchecked")
     public Object clone() {
         try {
             HashSet<E> newSet = (HashSet<E>) super.clone();
@@ -296,7 +297,7 @@
         // Read in HashMap capacity and load factor and create backing HashMap
         int capacity = s.readInt();
         float loadFactor = s.readFloat();
-        map = (((HashSet)this) instanceof LinkedHashSet ?
+        map = (((HashSet<?>)this) instanceof LinkedHashSet ?
                new LinkedHashMap<E,Object>(capacity, loadFactor) :
                new HashMap<E,Object>(capacity, loadFactor));
 
@@ -305,7 +306,8 @@
 
         // Read in all elements in the proper order.
         for (int i=0; i<size; i++) {
-            E e = (E) s.readObject();
+            @SuppressWarnings("unchecked")
+                E e = (E) s.readObject();
             map.put(e, PRESENT);
         }
     }
--- a/src/share/classes/java/util/Hashtable.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Hashtable.java	Tue May 08 07:34:53 2012 -0700
@@ -129,7 +129,7 @@
     /**
      * The hash table data.
      */
-    private transient Entry[] table;
+    private transient Entry<?,?>[] table;
 
     /**
      * The total number of entries in the hash table.
@@ -182,7 +182,7 @@
         if (initialCapacity==0)
             initialCapacity = 1;
         this.loadFactor = loadFactor;
-        table = new Entry[initialCapacity];
+        table = new Entry<?,?>[initialCapacity];
         threshold = (int)(initialCapacity * loadFactor);
     }
 
@@ -288,9 +288,9 @@
             throw new NullPointerException();
         }
 
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         for (int i = tab.length ; i-- > 0 ;) {
-            for (Entry<K,V> e = tab[i] ; e != null ; e = e.next) {
+            for (Entry<?,?> e = tab[i] ; e != null ; e = e.next) {
                 if (e.value.equals(value)) {
                     return true;
                 }
@@ -326,10 +326,10 @@
      * @see     #contains(Object)
      */
     public synchronized boolean containsKey(Object key) {
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         int hash = key.hashCode();
         int index = (hash & 0x7FFFFFFF) % tab.length;
-        for (Entry<K,V> e = tab[index] ; e != null ; e = e.next) {
+        for (Entry<?,?> e = tab[index] ; e != null ; e = e.next) {
             if ((e.hash == hash) && e.key.equals(key)) {
                 return true;
             }
@@ -352,13 +352,14 @@
      * @throws NullPointerException if the specified key is null
      * @see     #put(Object, Object)
      */
+    @SuppressWarnings("unchecked")
     public synchronized V get(Object key) {
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         int hash = key.hashCode();
         int index = (hash & 0x7FFFFFFF) % tab.length;
-        for (Entry<K,V> e = tab[index] ; e != null ; e = e.next) {
+        for (Entry<?,?> e = tab[index] ; e != null ; e = e.next) {
             if ((e.hash == hash) && e.key.equals(key)) {
-                return e.value;
+                return (V)e.value;
             }
         }
         return null;
@@ -379,9 +380,10 @@
      * number of keys in the hashtable exceeds this hashtable's capacity
      * and load factor.
      */
+    @SuppressWarnings("unchecked")
     protected void rehash() {
         int oldCapacity = table.length;
-        Entry[] oldMap = table;
+        Entry<?,?>[] oldMap = table;
 
         // overflow-conscious code
         int newCapacity = (oldCapacity << 1) + 1;
@@ -391,19 +393,19 @@
                 return;
             newCapacity = MAX_ARRAY_SIZE;
         }
-        Entry[] newMap = new Entry[newCapacity];
+        Entry<?,?>[] newMap = new Entry<?,?>[newCapacity];
 
         modCount++;
         threshold = (int)(newCapacity * loadFactor);
         table = newMap;
 
         for (int i = oldCapacity ; i-- > 0 ;) {
-            for (Entry<K,V> old = oldMap[i] ; old != null ; ) {
+            for (Entry<K,V> old = (Entry<K,V>)oldMap[i] ; old != null ; ) {
                 Entry<K,V> e = old;
                 old = old.next;
 
                 int index = (e.hash & 0x7FFFFFFF) % newCapacity;
-                e.next = newMap[index];
+                e.next = (Entry<K,V>)newMap[index];
                 newMap[index] = e;
             }
         }
@@ -433,13 +435,15 @@
         }
 
         // Makes sure the key is not already in the hashtable.
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         int hash = key.hashCode();
         int index = (hash & 0x7FFFFFFF) % tab.length;
-        for (Entry<K,V> e = tab[index] ; e != null ; e = e.next) {
-            if ((e.hash == hash) && e.key.equals(key)) {
-                V old = e.value;
-                e.value = value;
+        @SuppressWarnings("unchecked")
+        Entry<K,V> entry = (Entry<K,V>)tab[index];
+        for(; entry != null ; entry = entry.next) {
+            if ((entry.hash == hash) && entry.key.equals(key)) {
+                V old = entry.value;
+                entry.value = value;
                 return old;
             }
         }
@@ -454,7 +458,8 @@
         }
 
         // Creates the new entry.
-        Entry<K,V> e = tab[index];
+        @SuppressWarnings("unchecked")
+        Entry<K,V> e = (Entry<K,V>)tab[index];
         tab[index] = new Entry<>(hash, key, value, e);
         count++;
         return null;
@@ -470,10 +475,12 @@
      * @throws  NullPointerException  if the key is <code>null</code>
      */
     public synchronized V remove(Object key) {
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         int hash = key.hashCode();
         int index = (hash & 0x7FFFFFFF) % tab.length;
-        for (Entry<K,V> e = tab[index], prev = null ; e != null ; prev = e, e = e.next) {
+        @SuppressWarnings("unchecked")
+        Entry<K,V> e = (Entry<K,V>)tab[index];
+        for(Entry<K,V> prev = null ; e != null ; prev = e, e = e.next) {
             if ((e.hash == hash) && e.key.equals(key)) {
                 modCount++;
                 if (prev != null) {
@@ -508,7 +515,7 @@
      * Clears this hashtable so that it contains no keys.
      */
     public synchronized void clear() {
-        Entry tab[] = table;
+        Entry<?,?> tab[] = table;
         modCount++;
         for (int index = tab.length; --index >= 0; )
             tab[index] = null;
@@ -524,11 +531,11 @@
      */
     public synchronized Object clone() {
         try {
-            Hashtable<K,V> t = (Hashtable<K,V>) super.clone();
-            t.table = new Entry[table.length];
+            Hashtable<?,?> t = (Hashtable<?,?>)super.clone();
+            t.table = new Entry<?,?>[table.length];
             for (int i = table.length ; i-- > 0 ; ) {
                 t.table[i] = (table[i] != null)
-                    ? (Entry<K,V>) table[i].clone() : null;
+                    ? (Entry<?,?>) table[i].clone() : null;
             }
             t.keySet = null;
             t.entrySet = null;
@@ -675,13 +682,13 @@
         public boolean contains(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry entry = (Map.Entry)o;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>)o;
             Object key = entry.getKey();
-            Entry[] tab = table;
+            Entry<?,?>[] tab = table;
             int hash = key.hashCode();
             int index = (hash & 0x7FFFFFFF) % tab.length;
 
-            for (Entry e = tab[index]; e != null; e = e.next)
+            for (Entry<?,?> e = tab[index]; e != null; e = e.next)
                 if (e.hash==hash && e.equals(entry))
                     return true;
             return false;
@@ -690,14 +697,15 @@
         public boolean remove(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
-            K key = entry.getKey();
-            Entry[] tab = table;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
+            Object key = entry.getKey();
+            Entry<?,?>[] tab = table;
             int hash = key.hashCode();
             int index = (hash & 0x7FFFFFFF) % tab.length;
 
-            for (Entry<K,V> e = tab[index], prev = null; e != null;
-                 prev = e, e = e.next) {
+            @SuppressWarnings("unchecked")
+            Entry<K,V> e = (Entry<K,V>)tab[index];
+            for(Entry<K,V> prev = null; e != null; prev = e, e = e.next) {
                 if (e.hash==hash && e.equals(entry)) {
                     modCount++;
                     if (prev != null)
@@ -776,7 +784,7 @@
 
         if (!(o instanceof Map))
             return false;
-        Map<K,V> t = (Map<K,V>) o;
+        Map<?,?> t = (Map<?,?>) o;
         if (t.size() != size())
             return false;
 
@@ -826,9 +834,9 @@
             return h;  // Returns zero
 
         loadFactor = -loadFactor;  // Mark hashCode computation in progress
-        Entry[] tab = table;
+        Entry<?,?>[] tab = table;
         for (int i = 0; i < tab.length; i++)
-            for (Entry e = tab[i]; e != null; e = e.next)
+            for (Entry<?,?> e = tab[i]; e != null; e = e.next)
                 h += e.key.hashCode() ^ e.value.hashCode();
         loadFactor = -loadFactor;  // Mark hashCode computation complete
 
@@ -859,7 +867,7 @@
 
             // Stack copies of the entries in the table
             for (int index = 0; index < table.length; index++) {
-                Entry entry = table[index];
+                Entry<?,?> entry = table[index];
 
                 while (entry != null) {
                     entryStack =
@@ -899,14 +907,15 @@
             length--;
         if (origlength > 0 && length > origlength)
             length = origlength;
-
-        Entry[] table = new Entry[length];
+        Entry<?,?>[] table = new Entry<?,?>[length];
         count = 0;
 
         // Read the number of elements and then all the key/value objects
         for (; elements > 0; elements--) {
-            K key = (K)s.readObject();
-            V value = (V)s.readObject();
+            @SuppressWarnings("unchecked")
+                K key = (K)s.readObject();
+            @SuppressWarnings("unchecked")
+                V value = (V)s.readObject();
             // synch could be eliminated for performance
             reconstitutionPut(table, key, value);
         }
@@ -924,7 +933,7 @@
      * because we are creating a new instance. Also, no return value
      * is needed.
      */
-    private void reconstitutionPut(Entry[] tab, K key, V value)
+    private void reconstitutionPut(Entry<?,?>[] tab, K key, V value)
         throws StreamCorruptedException
     {
         if (value == null) {
@@ -934,13 +943,14 @@
         // This should not happen in deserialized version.
         int hash = key.hashCode();
         int index = (hash & 0x7FFFFFFF) % tab.length;
-        for (Entry<K,V> e = tab[index] ; e != null ; e = e.next) {
+        for (Entry<?,?> e = tab[index] ; e != null ; e = e.next) {
             if ((e.hash == hash) && e.key.equals(key)) {
                 throw new java.io.StreamCorruptedException();
             }
         }
         // Creates the new entry.
-        Entry<K,V> e = tab[index];
+        @SuppressWarnings("unchecked")
+            Entry<K,V> e = (Entry<K,V>)tab[index];
         tab[index] = new Entry<>(hash, key, value, e);
         count++;
     }
@@ -961,6 +971,7 @@
             this.next = next;
         }
 
+        @SuppressWarnings("unchecked")
         protected Object clone() {
             return new Entry<>(hash, key, value,
                                   (next==null ? null : (Entry<K,V>) next.clone()));
@@ -988,7 +999,7 @@
         public boolean equals(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry e = (Map.Entry)o;
+            Map.Entry<?,?> e = (Map.Entry<?,?>)o;
 
             return (key==null ? e.getKey()==null : key.equals(e.getKey())) &&
                (value==null ? e.getValue()==null : value.equals(e.getValue()));
@@ -1016,10 +1027,10 @@
      * by passing an Enumeration.
      */
     private class Enumerator<T> implements Enumeration<T>, Iterator<T> {
-        Entry[] table = Hashtable.this.table;
+        Entry<?,?>[] table = Hashtable.this.table;
         int index = table.length;
-        Entry<K,V> entry = null;
-        Entry<K,V> lastReturned = null;
+        Entry<?,?> entry = null;
+        Entry<?,?> lastReturned = null;
         int type;
 
         /**
@@ -1041,9 +1052,9 @@
         }
 
         public boolean hasMoreElements() {
-            Entry<K,V> e = entry;
+            Entry<?,?> e = entry;
             int i = index;
-            Entry[] t = table;
+            Entry<?,?>[] t = table;
             /* Use locals for faster loop iteration */
             while (e == null && i > 0) {
                 e = t[--i];
@@ -1053,10 +1064,11 @@
             return e != null;
         }
 
+        @SuppressWarnings("unchecked")
         public T nextElement() {
-            Entry<K,V> et = entry;
+            Entry<?,?> et = entry;
             int i = index;
-            Entry[] t = table;
+            Entry<?,?>[] t = table;
             /* Use locals for faster loop iteration */
             while (et == null && i > 0) {
                 et = t[--i];
@@ -1064,7 +1076,7 @@
             entry = et;
             index = i;
             if (et != null) {
-                Entry<K,V> e = lastReturned = entry;
+                Entry<?,?> e = lastReturned = entry;
                 entry = e.next;
                 return type == KEYS ? (T)e.key : (type == VALUES ? (T)e.value : (T)e);
             }
@@ -1091,11 +1103,12 @@
                 throw new ConcurrentModificationException();
 
             synchronized(Hashtable.this) {
-                Entry[] tab = Hashtable.this.table;
+                Entry<?,?>[] tab = Hashtable.this.table;
                 int index = (lastReturned.hash & 0x7FFFFFFF) % tab.length;
 
-                for (Entry<K,V> e = tab[index], prev = null; e != null;
-                     prev = e, e = e.next) {
+                @SuppressWarnings("unchecked")
+                Entry<K,V> e = (Entry<K,V>)tab[index];
+                for(Entry<K,V> prev = null; e != null; prev = e, e = e.next) {
                     if (e == lastReturned) {
                         modCount++;
                         expectedModCount++;
--- a/src/share/classes/java/util/IdentityHashMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/IdentityHashMap.java	Tue May 08 07:34:53 2012 -0700
@@ -327,6 +327,7 @@
      *
      * @see #put(Object, Object)
      */
+    @SuppressWarnings("unchecked")
     public V get(Object key) {
         Object k = maskNull(key);
         Object[] tab = table;
@@ -431,7 +432,8 @@
         Object item;
         while ( (item = tab[i]) != null) {
             if (item == k) {
-                V oldValue = (V) tab[i + 1];
+                @SuppressWarnings("unchecked")
+                    V oldValue = (V) tab[i + 1];
                 tab[i + 1] = value;
                 return oldValue;
             }
@@ -524,7 +526,8 @@
             if (item == k) {
                 modCount++;
                 size--;
-                V oldValue = (V) tab[i + 1];
+                @SuppressWarnings("unchecked")
+                    V oldValue = (V) tab[i + 1];
                 tab[i + 1] = null;
                 tab[i] = null;
                 closeDeletion(i);
@@ -638,7 +641,7 @@
         if (o == this) {
             return true;
         } else if (o instanceof IdentityHashMap) {
-            IdentityHashMap m = (IdentityHashMap) o;
+            IdentityHashMap<?,?> m = (IdentityHashMap<?,?>) o;
             if (m.size() != size)
                 return false;
 
@@ -650,7 +653,7 @@
             }
             return true;
         } else if (o instanceof Map) {
-            Map m = (Map)o;
+            Map<?,?> m = (Map<?,?>)o;
             return entrySet().equals(m.entrySet());
         } else {
             return false;  // o is not a Map
@@ -698,7 +701,7 @@
      */
     public Object clone() {
         try {
-            IdentityHashMap<K,V> m = (IdentityHashMap<K,V>) super.clone();
+            IdentityHashMap<?,?> m = (IdentityHashMap<?,?>) super.clone();
             m.entrySet = null;
             m.table = table.clone();
             return m;
@@ -768,7 +771,7 @@
             int len = tab.length;
 
             int d = deletedSlot;
-            K key = (K) tab[d];
+            Object key = tab[d];
             tab[d] = null;        // vacate the slot
             tab[d + 1] = null;
 
@@ -818,12 +821,14 @@
     }
 
     private class KeyIterator extends IdentityHashMapIterator<K> {
+        @SuppressWarnings("unchecked")
         public K next() {
             return (K) unmaskNull(traversalTable[nextIndex()]);
         }
     }
 
     private class ValueIterator extends IdentityHashMapIterator<V> {
+        @SuppressWarnings("unchecked")
         public V next() {
             return (V) traversalTable[nextIndex() + 1];
         }
@@ -854,16 +859,19 @@
                 this.index = index;
             }
 
+            @SuppressWarnings("unchecked")
             public K getKey() {
                 checkIndexForEntryUse();
                 return (K) unmaskNull(traversalTable[index]);
             }
 
+            @SuppressWarnings("unchecked")
             public V getValue() {
                 checkIndexForEntryUse();
                 return (V) traversalTable[index+1];
             }
 
+            @SuppressWarnings("unchecked")
             public V setValue(V value) {
                 checkIndexForEntryUse();
                 V oldValue = (V) traversalTable[index+1];
@@ -880,7 +888,7 @@
 
                 if (!(o instanceof Map.Entry))
                     return false;
-                Map.Entry e = (Map.Entry)o;
+                Map.Entry<?,?> e = (Map.Entry<?,?>)o;
                 return (e.getKey() == unmaskNull(traversalTable[index]) &&
                        e.getValue() == traversalTable[index+1]);
             }
@@ -1109,13 +1117,13 @@
         public boolean contains(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry entry = (Map.Entry)o;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>)o;
             return containsMapping(entry.getKey(), entry.getValue());
         }
         public boolean remove(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry entry = (Map.Entry)o;
+            Map.Entry<?,?> entry = (Map.Entry<?,?>)o;
             return removeMapping(entry.getKey(), entry.getValue());
         }
         public int size() {
@@ -1213,8 +1221,10 @@
 
         // Read the keys and values, and put the mappings in the table
         for (int i=0; i<size; i++) {
-            K key = (K) s.readObject();
-            V value = (V) s.readObject();
+            @SuppressWarnings("unchecked")
+                K key = (K) s.readObject();
+            @SuppressWarnings("unchecked")
+                V value = (V) s.readObject();
             putForCreate(key, value);
         }
     }
@@ -1226,7 +1236,7 @@
     private void putForCreate(K key, V value)
         throws IOException
     {
-        K k = (K)maskNull(key);
+        Object k = maskNull(key);
         Object[] tab = table;
         int len = tab.length;
         int i = hash(k, len);
--- a/src/share/classes/java/util/IllegalFormatConversionException.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/IllegalFormatConversionException.java	Tue May 08 07:34:53 2012 -0700
@@ -40,7 +40,7 @@
     private static final long serialVersionUID = 17000126L;
 
     private char c;
-    private Class arg;
+    private Class<?> arg;
 
     /**
      * Constructs an instance of this class with the mismatched conversion and
--- a/src/share/classes/java/util/JumboEnumSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/JumboEnumSet.java	Tue May 08 07:34:53 2012 -0700
@@ -46,7 +46,7 @@
     // Redundant - maintained for performance
     private int size = 0;
 
-    JumboEnumSet(Class<E>elementType, Enum[] universe) {
+    JumboEnumSet(Class<E>elementType, Enum<?>[] universe) {
         super(elementType, universe);
         elements = new long[(universe.length + 63) >>> 6];
     }
@@ -127,6 +127,7 @@
             return unseen != 0;
         }
 
+        @Override
         public E next() {
             if (!hasNext())
                 throw new NoSuchElementException();
@@ -176,11 +177,11 @@
     public boolean contains(Object e) {
         if (e == null)
             return false;
-        Class eClass = e.getClass();
+        Class<?> eClass = e.getClass();
         if (eClass != elementType && eClass.getSuperclass() != elementType)
             return false;
 
-        int eOrdinal = ((Enum)e).ordinal();
+        int eOrdinal = ((Enum<?>)e).ordinal();
         return (elements[eOrdinal >>> 6] & (1L << eOrdinal)) != 0;
     }
 
@@ -217,10 +218,10 @@
     public boolean remove(Object e) {
         if (e == null)
             return false;
-        Class eClass = e.getClass();
+        Class<?> eClass = e.getClass();
         if (eClass != elementType && eClass.getSuperclass() != elementType)
             return false;
-        int eOrdinal = ((Enum)e).ordinal();
+        int eOrdinal = ((Enum<?>)e).ordinal();
         int eWordNum = eOrdinal >>> 6;
 
         long oldElements = elements[eWordNum];
@@ -246,7 +247,7 @@
         if (!(c instanceof JumboEnumSet))
             return super.containsAll(c);
 
-        JumboEnumSet es = (JumboEnumSet)c;
+        JumboEnumSet<?> es = (JumboEnumSet<?>)c;
         if (es.elementType != elementType)
             return es.isEmpty();
 
@@ -268,7 +269,7 @@
         if (!(c instanceof JumboEnumSet))
             return super.addAll(c);
 
-        JumboEnumSet es = (JumboEnumSet)c;
+        JumboEnumSet<?> es = (JumboEnumSet<?>)c;
         if (es.elementType != elementType) {
             if (es.isEmpty())
                 return false;
@@ -294,7 +295,7 @@
         if (!(c instanceof JumboEnumSet))
             return super.removeAll(c);
 
-        JumboEnumSet es = (JumboEnumSet)c;
+        JumboEnumSet<?> es = (JumboEnumSet<?>)c;
         if (es.elementType != elementType)
             return false;
 
@@ -348,7 +349,7 @@
         if (!(o instanceof JumboEnumSet))
             return super.equals(o);
 
-        JumboEnumSet es = (JumboEnumSet)o;
+        JumboEnumSet<?> es = (JumboEnumSet<?>)o;
         if (es.elementType != elementType)
             return size == 0 && es.size == 0;
 
--- a/src/share/classes/java/util/LinkedHashMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/LinkedHashMap.java	Tue May 08 07:34:53 2012 -0700
@@ -246,11 +246,12 @@
      * by superclass resize.  It is overridden for performance, as it is
      * faster to iterate using our linked list.
      */
+    @SuppressWarnings("unchecked")
     void transfer(HashMap.Entry[] newTable) {
         int newCapacity = newTable.length;
         for (Entry<K,V> e = header.after; e != header; e = e.after) {
             int index = indexFor(e.hash, newCapacity);
-            e.next = newTable[index];
+            e.next = (HashMap.Entry<K,V>)newTable[index];
             newTable[index] = e;
         }
     }
@@ -267,11 +268,11 @@
     public boolean containsValue(Object value) {
         // Overridden to take advantage of faster iterator
         if (value==null) {
-            for (Entry e = header.after; e != header; e = e.after)
+            for (Entry<?,?> e = header.after; e != header; e = e.after)
                 if (e.value==null)
                     return true;
         } else {
-            for (Entry e = header.after; e != header; e = e.after)
+            for (Entry<?,?> e = header.after; e != header; e = e.after)
                 if (value.equals(e.value))
                     return true;
         }
@@ -437,7 +438,8 @@
      * table or remove the eldest entry.
      */
     void createEntry(int hash, K key, V value, int bucketIndex) {
-        HashMap.Entry<K,V> old = table[bucketIndex];
+        @SuppressWarnings("unchecked")
+            HashMap.Entry<K,V> old = (HashMap.Entry<K,V>)table[bucketIndex];
         Entry<K,V> e = new Entry<>(hash, key, value, old);
         table[bucketIndex] = e;
         e.addBefore(header);
--- a/src/share/classes/java/util/Observable.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Observable.java	Tue May 08 07:34:53 2012 -0700
@@ -61,12 +61,12 @@
  */
 public class Observable {
     private boolean changed = false;
-    private Vector obs;
+    private Vector<Observer> obs;
 
     /** Construct an Observable with zero Observers. */
 
     public Observable() {
-        obs = new Vector();
+        obs = new Vector<>();
     }
 
     /**
--- a/src/share/classes/java/util/PriorityQueue.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/PriorityQueue.java	Tue May 08 07:34:53 2012 -0700
@@ -449,6 +449,7 @@
      *         this queue
      * @throws NullPointerException if the specified array is null
      */
+    @SuppressWarnings("unchecked")
     public <T> T[] toArray(T[] a) {
         if (a.length < size)
             // Make a new array of a's runtime type, but my contents:
@@ -514,6 +515,7 @@
                 (forgetMeNot != null && !forgetMeNot.isEmpty());
         }
 
+        @SuppressWarnings("unchecked")
         public E next() {
             if (expectedModCount != modCount)
                 throw new ConcurrentModificationException();
@@ -571,8 +573,10 @@
             return null;
         int s = --size;
         modCount++;
-        E result = (E) queue[0];
-        E x = (E) queue[s];
+        @SuppressWarnings("unchecked")
+            E result = (E) queue[0];
+        @SuppressWarnings("unchecked")
+            E x = (E) queue[s];
         queue[s] = null;
         if (s != 0)
             siftDown(0, x);
@@ -598,7 +602,8 @@
         if (s == i) // removed last element
             queue[i] = null;
         else {
-            E moved = (E) queue[s];
+            @SuppressWarnings("unchecked")
+                E moved = (E) queue[s];
             queue[s] = null;
             siftDown(i, moved);
             if (queue[i] == moved) {
@@ -629,6 +634,7 @@
             siftUpComparable(k, x);
     }
 
+    @SuppressWarnings("unchecked")
     private void siftUpComparable(int k, E x) {
         Comparable<? super E> key = (Comparable<? super E>) x;
         while (k > 0) {
@@ -645,8 +651,9 @@
     private void siftUpUsingComparator(int k, E x) {
         while (k > 0) {
             int parent = (k - 1) >>> 1;
-            Object e = queue[parent];
-            if (comparator.compare(x, (E) e) >= 0)
+            @SuppressWarnings("unchecked")
+                E e = (E) queue[parent];
+            if (comparator.compare(x, e) >= 0)
                 break;
             queue[k] = e;
             k = parent;
@@ -669,6 +676,7 @@
             siftDownComparable(k, x);
     }
 
+    @SuppressWarnings("unchecked")
     private void siftDownComparable(int k, E x) {
         Comparable<? super E> key = (Comparable<? super E>)x;
         int half = size >>> 1;        // loop while a non-leaf
@@ -687,6 +695,7 @@
         queue[k] = key;
     }
 
+    @SuppressWarnings("unchecked")
     private void siftDownUsingComparator(int k, E x) {
         int half = size >>> 1;
         while (k < half) {
@@ -708,6 +717,7 @@
      * Establishes the heap invariant (described above) in the entire tree,
      * assuming nothing about the order of the elements prior to the call.
      */
+    @SuppressWarnings("unchecked")
     private void heapify() {
         for (int i = (size >>> 1) - 1; i >= 0; i--)
             siftDown(i, (E) queue[i]);
--- a/src/share/classes/java/util/Properties.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/Properties.java	Tue May 08 07:34:53 2012 -0700
@@ -824,7 +824,7 @@
         bw.write("#" + new Date().toString());
         bw.newLine();
         synchronized (this) {
-            for (Enumeration e = keys(); e.hasMoreElements();) {
+            for (Enumeration<?> e = keys(); e.hasMoreElements();) {
                 String key = (String)e.nextElement();
                 String val = (String)get(key);
                 key = saveConvert(key, true, escUnicode);
@@ -987,7 +987,7 @@
      * @see     #stringPropertyNames
      */
     public Enumeration<?> propertyNames() {
-        Hashtable h = new Hashtable();
+        Hashtable<String,Object> h = new Hashtable<>();
         enumerate(h);
         return h.keys();
     }
@@ -1026,10 +1026,10 @@
      */
     public void list(PrintStream out) {
         out.println("-- listing properties --");
-        Hashtable h = new Hashtable();
+        Hashtable<String,Object> h = new Hashtable<>();
         enumerate(h);
-        for (Enumeration e = h.keys() ; e.hasMoreElements() ;) {
-            String key = (String)e.nextElement();
+        for (Enumeration<String> e = h.keys() ; e.hasMoreElements() ;) {
+            String key = e.nextElement();
             String val = (String)h.get(key);
             if (val.length() > 40) {
                 val = val.substring(0, 37) + "...";
@@ -1054,10 +1054,10 @@
      */
     public void list(PrintWriter out) {
         out.println("-- listing properties --");
-        Hashtable h = new Hashtable();
+        Hashtable<String,Object> h = new Hashtable<>();
         enumerate(h);
-        for (Enumeration e = h.keys() ; e.hasMoreElements() ;) {
-            String key = (String)e.nextElement();
+        for (Enumeration<String> e = h.keys() ; e.hasMoreElements() ;) {
+            String key = e.nextElement();
             String val = (String)h.get(key);
             if (val.length() > 40) {
                 val = val.substring(0, 37) + "...";
@@ -1072,11 +1072,11 @@
      * @throws ClassCastException if any of the property keys
      *         is not of String type.
      */
-    private synchronized void enumerate(Hashtable h) {
+    private synchronized void enumerate(Hashtable<String,Object> h) {
         if (defaults != null) {
             defaults.enumerate(h);
         }
-        for (Enumeration e = keys() ; e.hasMoreElements() ;) {
+        for (Enumeration<?> e = keys() ; e.hasMoreElements() ;) {
             String key = (String)e.nextElement();
             h.put(key, get(key));
         }
@@ -1091,7 +1091,7 @@
         if (defaults != null) {
             defaults.enumerateStringProperties(h);
         }
-        for (Enumeration e = keys() ; e.hasMoreElements() ;) {
+        for (Enumeration<?> e = keys() ; e.hasMoreElements() ;) {
             Object k = e.nextElement();
             Object v = get(k);
             if (k instanceof String && v instanceof String) {
--- a/src/share/classes/java/util/PropertyPermission.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/PropertyPermission.java	Tue May 08 07:34:53 2012 -0700
@@ -442,7 +442,7 @@
      * Key is property name; value is PropertyPermission.
      * Not serialized; see serialization section at end of class.
      */
-    private transient Map<String, Permission> perms;
+    private transient Map<String, PropertyPermission> perms;
 
     /**
      * Boolean saying if "*" is in the collection.
@@ -488,7 +488,7 @@
         String propName = pp.getName();
 
         synchronized (this) {
-            PropertyPermission existing = (PropertyPermission) perms.get(propName);
+            PropertyPermission existing = perms.get(propName);
 
             if (existing != null) {
                 int oldMask = existing.getMask();
@@ -499,7 +499,7 @@
                     perms.put(propName, new PropertyPermission(propName, actions));
                 }
             } else {
-                perms.put(propName, permission);
+                perms.put(propName, pp);
             }
         }
 
@@ -533,7 +533,7 @@
         // short circuit if the "*" Permission was added
         if (all_allowed) {
             synchronized (this) {
-                x = (PropertyPermission) perms.get("*");
+                x = perms.get("*");
             }
             if (x != null) {
                 effective |= x.getMask();
@@ -550,7 +550,7 @@
         //System.out.println("check "+name);
 
         synchronized (this) {
-            x = (PropertyPermission) perms.get(name);
+            x = perms.get(name);
         }
 
         if (x != null) {
@@ -570,7 +570,7 @@
             name = name.substring(0, last+1) + "*";
             //System.out.println("check "+name);
             synchronized (this) {
-                x = (PropertyPermission) perms.get(name);
+                x = perms.get(name);
             }
 
             if (x != null) {
@@ -592,11 +592,15 @@
      *
      * @return an enumeration of all the PropertyPermission objects.
      */
-
+    @SuppressWarnings("unchecked")
     public Enumeration<Permission> elements() {
         // Convert Iterator of Map values into an Enumeration
         synchronized (this) {
-            return Collections.enumeration(perms.values());
+            /**
+             * Casting to rawtype since Enumeration<PropertyPermission>
+             * cannot be directly cast to Enumeration<Permission>
+             */
+            return (Enumeration)Collections.enumeration(perms.values());
         }
     }
 
@@ -633,7 +637,8 @@
         // Don't call out.defaultWriteObject()
 
         // Copy perms into a Hashtable
-        Hashtable<String, Permission> permissions = new Hashtable<>(perms.size()*2);
+        Hashtable<String, Permission> permissions =
+            new Hashtable<>(perms.size()*2);
         synchronized (this) {
             permissions.putAll(perms);
         }
@@ -661,8 +666,8 @@
 
         // Get permissions
         @SuppressWarnings("unchecked")
-        Hashtable<String, Permission> permissions =
-            (Hashtable<String, Permission>)gfields.get("permissions", null);
+        Hashtable<String, PropertyPermission> permissions =
+            (Hashtable<String, PropertyPermission>)gfields.get("permissions", null);
         perms = new HashMap<>(permissions.size()*2);
         perms.putAll(permissions);
     }
--- a/src/share/classes/java/util/RegularEnumSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/RegularEnumSet.java	Tue May 08 07:34:53 2012 -0700
@@ -41,7 +41,7 @@
      */
     private long elements = 0L;
 
-    RegularEnumSet(Class<E>elementType, Enum[] universe) {
+    RegularEnumSet(Class<E>elementType, Enum<?>[] universe) {
         super(elementType, universe);
     }
 
@@ -96,6 +96,7 @@
             return unseen != 0;
         }
 
+        @SuppressWarnings("unchecked")
         public E next() {
             if (unseen == 0)
                 throw new NoSuchElementException();
@@ -139,11 +140,11 @@
     public boolean contains(Object e) {
         if (e == null)
             return false;
-        Class eClass = e.getClass();
+        Class<?> eClass = e.getClass();
         if (eClass != elementType && eClass.getSuperclass() != elementType)
             return false;
 
-        return (elements & (1L << ((Enum)e).ordinal())) != 0;
+        return (elements & (1L << ((Enum<?>)e).ordinal())) != 0;
     }
 
     // Modification Operations
@@ -160,7 +161,7 @@
         typeCheck(e);
 
         long oldElements = elements;
-        elements |= (1L << ((Enum)e).ordinal());
+        elements |= (1L << ((Enum<?>)e).ordinal());
         return elements != oldElements;
     }
 
@@ -173,12 +174,12 @@
     public boolean remove(Object e) {
         if (e == null)
             return false;
-        Class eClass = e.getClass();
+        Class<?> eClass = e.getClass();
         if (eClass != elementType && eClass.getSuperclass() != elementType)
             return false;
 
         long oldElements = elements;
-        elements &= ~(1L << ((Enum)e).ordinal());
+        elements &= ~(1L << ((Enum<?>)e).ordinal());
         return elements != oldElements;
     }
 
@@ -197,7 +198,7 @@
         if (!(c instanceof RegularEnumSet))
             return super.containsAll(c);
 
-        RegularEnumSet es = (RegularEnumSet)c;
+        RegularEnumSet<?> es = (RegularEnumSet<?>)c;
         if (es.elementType != elementType)
             return es.isEmpty();
 
@@ -216,7 +217,7 @@
         if (!(c instanceof RegularEnumSet))
             return super.addAll(c);
 
-        RegularEnumSet es = (RegularEnumSet)c;
+        RegularEnumSet<?> es = (RegularEnumSet<?>)c;
         if (es.elementType != elementType) {
             if (es.isEmpty())
                 return false;
@@ -242,7 +243,7 @@
         if (!(c instanceof RegularEnumSet))
             return super.removeAll(c);
 
-        RegularEnumSet es = (RegularEnumSet)c;
+        RegularEnumSet<?> es = (RegularEnumSet<?>)c;
         if (es.elementType != elementType)
             return false;
 
@@ -295,7 +296,7 @@
         if (!(o instanceof RegularEnumSet))
             return super.equals(o);
 
-        RegularEnumSet es = (RegularEnumSet)o;
+        RegularEnumSet<?> es = (RegularEnumSet<?>)o;
         if (es.elementType != elementType)
             return elements == 0 && es.elements == 0;
         return es.elements == elements;
--- a/src/share/classes/java/util/ResourceBundle.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/ResourceBundle.java	Tue May 08 07:34:53 2012 -0700
@@ -294,7 +294,8 @@
     /**
      * Queue for reference objects referring to class loaders or bundles.
      */
-    private static final ReferenceQueue<Object> referenceQueue = new ReferenceQueue<>();
+    private static final ReferenceQueue<Object> referenceQueue =
+        new ReferenceQueue<>();
 
     /**
      * The parent bundle of this bundle.
@@ -417,7 +418,7 @@
      * caller's caller.
      */
     private static ClassLoader getLoader() {
-        Class[] stack = getClassContext();
+        Class<?>[] stack = getClassContext();
         /* Magic number 2 identifies our caller's caller */
         Class<?> c = stack[2];
         ClassLoader cl = (c == null) ? null : c.getClassLoader();
@@ -434,7 +435,7 @@
         return cl;
     }
 
-    private static native Class[] getClassContext();
+    private static native Class<?>[] getClassContext();
 
     /**
      * A wrapper of ClassLoader.getSystemClassLoader().
--- a/src/share/classes/java/util/ServiceLoader.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/ServiceLoader.java	Tue May 08 07:34:53 2012 -0700
@@ -218,20 +218,20 @@
         reload();
     }
 
-    private static void fail(Class service, String msg, Throwable cause)
+    private static void fail(Class<?> service, String msg, Throwable cause)
         throws ServiceConfigurationError
     {
         throw new ServiceConfigurationError(service.getName() + ": " + msg,
                                             cause);
     }
 
-    private static void fail(Class service, String msg)
+    private static void fail(Class<?> service, String msg)
         throws ServiceConfigurationError
     {
         throw new ServiceConfigurationError(service.getName() + ": " + msg);
     }
 
-    private static void fail(Class service, URL u, int line, String msg)
+    private static void fail(Class<?> service, URL u, int line, String msg)
         throws ServiceConfigurationError
     {
         fail(service, u + ":" + line + ": " + msg);
@@ -240,7 +240,7 @@
     // Parse a single line from the given configuration file, adding the name
     // on the line to the names list.
     //
-    private int parseLine(Class service, URL u, BufferedReader r, int lc,
+    private int parseLine(Class<?> service, URL u, BufferedReader r, int lc,
                           List<String> names)
         throws IOException, ServiceConfigurationError
     {
@@ -286,7 +286,7 @@
     //         If an I/O error occurs while reading from the given URL, or
     //         if a configuration-file format error is detected
     //
-    private Iterator<String> parse(Class service, URL u)
+    private Iterator<String> parse(Class<?> service, URL u)
         throws ServiceConfigurationError
     {
         InputStream in = null;
--- a/src/share/classes/java/util/TimeZone.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/TimeZone.java	Tue May 08 07:34:53 2012 -0700
@@ -428,7 +428,7 @@
         // The structure is:
         //   Map(key=id, value=SoftReference(Map(key=locale, value=displaynames)))
         private static final Map<String, SoftReference<Map<Locale, String[]>>> CACHE =
-            new ConcurrentHashMap<String, SoftReference<Map<Locale, String[]>>>();
+            new ConcurrentHashMap<>();
     }
 
     private static final String[] getDisplayNames(String id, Locale locale) {
@@ -452,9 +452,9 @@
 
         String[] names = TimeZoneNameUtility.retrieveDisplayNames(id, locale);
         if (names != null) {
-            Map<Locale, String[]> perLocale = new ConcurrentHashMap<Locale, String[]>();
+            Map<Locale, String[]> perLocale = new ConcurrentHashMap<>();
             perLocale.put(locale, names);
-            ref = new SoftReference<Map<Locale, String[]>>(perLocale);
+            ref = new SoftReference<>(perLocale);
             displayNames.put(id, ref);
         }
         return names;
--- a/src/share/classes/java/util/TreeMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/TreeMap.java	Tue May 08 07:34:53 2012 -0700
@@ -307,7 +307,7 @@
     public void putAll(Map<? extends K, ? extends V> map) {
         int mapSize = map.size();
         if (size==0 && mapSize!=0 && map instanceof SortedMap) {
-            Comparator c = ((SortedMap)map).comparator();
+            Comparator<?> c = ((SortedMap<?,?>)map).comparator();
             if (c == comparator || (c != null && c.equals(comparator))) {
                 ++modCount;
                 try {
@@ -340,7 +340,8 @@
             return getEntryUsingComparator(key);
         if (key == null)
             throw new NullPointerException();
-        Comparable<? super K> k = (Comparable<? super K>) key;
+        @SuppressWarnings("unchecked")
+            Comparable<? super K> k = (Comparable<? super K>) key;
         Entry<K,V> p = root;
         while (p != null) {
             int cmp = k.compareTo(p.key);
@@ -361,7 +362,8 @@
      * worthwhile here.)
      */
     final Entry<K,V> getEntryUsingComparator(Object key) {
-        K k = (K) key;
+        @SuppressWarnings("unchecked")
+            K k = (K) key;
         Comparator<? super K> cpr = comparator;
         if (cpr != null) {
             Entry<K,V> p = root;
@@ -554,7 +556,8 @@
         else {
             if (key == null)
                 throw new NullPointerException();
-            Comparable<? super K> k = (Comparable<? super K>) key;
+            @SuppressWarnings("unchecked")
+                Comparable<? super K> k = (Comparable<? super K>) key;
             do {
                 parent = t;
                 cmp = k.compareTo(t.key);
@@ -618,9 +621,9 @@
      * @return a shallow copy of this map
      */
     public Object clone() {
-        TreeMap<K,V> clone = null;
+        TreeMap<?,?> clone;
         try {
-            clone = (TreeMap<K,V>) super.clone();
+            clone = (TreeMap<?,?>) super.clone();
         } catch (CloneNotSupportedException e) {
             throw new InternalError(e);
         }
@@ -803,7 +806,7 @@
      */
     public NavigableSet<K> navigableKeySet() {
         KeySet<K> nks = navigableKeySet;
-        return (nks != null) ? nks : (navigableKeySet = new KeySet(this));
+        return (nks != null) ? nks : (navigableKeySet = new KeySet<>(this));
     }
 
     /**
@@ -859,9 +862,9 @@
     public NavigableMap<K, V> descendingMap() {
         NavigableMap<K, V> km = descendingMap;
         return (km != null) ? km :
-            (descendingMap = new DescendingSubMap(this,
-                                                  true, null, true,
-                                                  true, null, true));
+            (descendingMap = new DescendingSubMap<>(this,
+                                                    true, null, true,
+                                                    true, null, true));
     }
 
     /**
@@ -874,9 +877,9 @@
      */
     public NavigableMap<K,V> subMap(K fromKey, boolean fromInclusive,
                                     K toKey,   boolean toInclusive) {
-        return new AscendingSubMap(this,
-                                   false, fromKey, fromInclusive,
-                                   false, toKey,   toInclusive);
+        return new AscendingSubMap<>(this,
+                                     false, fromKey, fromInclusive,
+                                     false, toKey,   toInclusive);
     }
 
     /**
@@ -888,9 +891,9 @@
      * @since 1.6
      */
     public NavigableMap<K,V> headMap(K toKey, boolean inclusive) {
-        return new AscendingSubMap(this,
-                                   true,  null,  true,
-                                   false, toKey, inclusive);
+        return new AscendingSubMap<>(this,
+                                     true,  null,  true,
+                                     false, toKey, inclusive);
     }
 
     /**
@@ -902,9 +905,9 @@
      * @since 1.6
      */
     public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive) {
-        return new AscendingSubMap(this,
-                                   false, fromKey, inclusive,
-                                   true,  null,    true);
+        return new AscendingSubMap<>(this,
+                                     false, fromKey, inclusive,
+                                     true,  null,    true);
     }
 
     /**
@@ -978,8 +981,8 @@
         public boolean contains(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
-            V value = entry.getValue();
+            Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
+            Object value = entry.getValue();
             Entry<K,V> p = getEntry(entry.getKey());
             return p != null && valEquals(p.getValue(), value);
         }
@@ -987,8 +990,8 @@
         public boolean remove(Object o) {
             if (!(o instanceof Map.Entry))
                 return false;
-            Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
-            V value = entry.getValue();
+            Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
+            Object value = entry.getValue();
             Entry<K,V> p = getEntry(entry.getKey());
             if (p != null && valEquals(p.getValue(), value)) {
                 deleteEntry(p);
@@ -1023,21 +1026,21 @@
     }
 
     static final class KeySet<E> extends AbstractSet<E> implements NavigableSet<E> {
-        private final NavigableMap<E, Object> m;
-        KeySet(NavigableMap<E,Object> map) { m = map; }
+        private final NavigableMap<E, ?> m;
+        KeySet(NavigableMap<E,?> map) { m = map; }
 
         public Iterator<E> iterator() {
             if (m instanceof TreeMap)
-                return ((TreeMap<E,Object>)m).keyIterator();
+                return ((TreeMap<E,?>)m).keyIterator();
             else
-                return (Iterator<E>)(((TreeMap.NavigableSubMap)m).keyIterator());
+                return ((TreeMap.NavigableSubMap<E,?>)m).keyIterator();
         }
 
         public Iterator<E> descendingIterator() {
             if (m instanceof TreeMap)
-                return ((TreeMap<E,Object>)m).descendingKeyIterator();
+                return ((TreeMap<E,?>)m).descendingKeyIterator();
             else
-                return (Iterator<E>)(((TreeMap.NavigableSubMap)m).descendingKeyIterator());
+                return ((TreeMap.NavigableSubMap<E,?>)m).descendingKeyIterator();
         }
 
         public int size() { return m.size(); }
@@ -1052,11 +1055,11 @@
         public E last() { return m.lastKey(); }
         public Comparator<? super E> comparator() { return m.comparator(); }
         public E pollFirst() {
-            Map.Entry<E,Object> e = m.pollFirstEntry();
+            Map.Entry<E,?> e = m.pollFirstEntry();
             return (e == null) ? null : e.getKey();
         }
         public E pollLast() {
-            Map.Entry<E,Object> e = m.pollLastEntry();
+            Map.Entry<E,?> e = m.pollLastEntry();
             return (e == null) ? null : e.getKey();
         }
         public boolean remove(Object o) {
@@ -1085,7 +1088,7 @@
             return tailSet(fromElement, true);
         }
         public NavigableSet<E> descendingSet() {
-            return new KeySet(m.descendingMap());
+            return new KeySet<>(m.descendingMap());
         }
     }
 
@@ -1184,6 +1187,7 @@
     /**
      * Compares two keys using the correct comparison method for this TreeMap.
      */
+    @SuppressWarnings("unchecked")
     final int compare(Object k1, Object k2) {
         return comparator==null ? ((Comparable<? super K>)k1).compareTo((K)k2)
             : comparator.compare((K)k1, (K)k2);
@@ -1488,7 +1492,7 @@
         public final NavigableSet<K> navigableKeySet() {
             KeySet<K> nksv = navigableKeySetView;
             return (nksv != null) ? nksv :
-                (navigableKeySetView = new TreeMap.KeySet(this));
+                (navigableKeySetView = new TreeMap.KeySet<>(this));
         }
 
         public final Set<K> keySet() {
@@ -1522,7 +1526,7 @@
                 if (size == -1 || sizeModCount != m.modCount) {
                     sizeModCount = m.modCount;
                     size = 0;
-                    Iterator i = iterator();
+                    Iterator<?> i = iterator();
                     while (i.hasNext()) {
                         size++;
                         i.next();
@@ -1539,11 +1543,11 @@
             public boolean contains(Object o) {
                 if (!(o instanceof Map.Entry))
                     return false;
-                Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
-                K key = entry.getKey();
+                Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
+                Object key = entry.getKey();
                 if (!inRange(key))
                     return false;
-                TreeMap.Entry node = m.getEntry(key);
+                TreeMap.Entry<?,?> node = m.getEntry(key);
                 return node != null &&
                     valEquals(node.getValue(), entry.getValue());
             }
@@ -1551,8 +1555,8 @@
             public boolean remove(Object o) {
                 if (!(o instanceof Map.Entry))
                     return false;
-                Map.Entry<K,V> entry = (Map.Entry<K,V>) o;
-                K key = entry.getKey();
+                Map.Entry<?,?> entry = (Map.Entry<?,?>) o;
+                Object key = entry.getKey();
                 if (!inRange(key))
                     return false;
                 TreeMap.Entry<K,V> node = m.getEntry(key);
@@ -1709,34 +1713,34 @@
                 throw new IllegalArgumentException("fromKey out of range");
             if (!inRange(toKey, toInclusive))
                 throw new IllegalArgumentException("toKey out of range");
-            return new AscendingSubMap(m,
-                                       false, fromKey, fromInclusive,
-                                       false, toKey,   toInclusive);
+            return new AscendingSubMap<>(m,
+                                         false, fromKey, fromInclusive,
+                                         false, toKey,   toInclusive);
         }
 
         public NavigableMap<K,V> headMap(K toKey, boolean inclusive) {
             if (!inRange(toKey, inclusive))
                 throw new IllegalArgumentException("toKey out of range");
-            return new AscendingSubMap(m,
-                                       fromStart, lo,    loInclusive,
-                                       false,     toKey, inclusive);
+            return new AscendingSubMap<>(m,
+                                         fromStart, lo,    loInclusive,
+                                         false,     toKey, inclusive);
         }
 
         public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive) {
             if (!inRange(fromKey, inclusive))
                 throw new IllegalArgumentException("fromKey out of range");
-            return new AscendingSubMap(m,
-                                       false, fromKey, inclusive,
-                                       toEnd, hi,      hiInclusive);
+            return new AscendingSubMap<>(m,
+                                         false, fromKey, inclusive,
+                                         toEnd, hi,      hiInclusive);
         }
 
         public NavigableMap<K,V> descendingMap() {
             NavigableMap<K,V> mv = descendingMapView;
             return (mv != null) ? mv :
                 (descendingMapView =
-                 new DescendingSubMap(m,
-                                      fromStart, lo, loInclusive,
-                                      toEnd,     hi, hiInclusive));
+                 new DescendingSubMap<>(m,
+                                        fromStart, lo, loInclusive,
+                                        toEnd,     hi, hiInclusive));
         }
 
         Iterator<K> keyIterator() {
@@ -1790,34 +1794,34 @@
                 throw new IllegalArgumentException("fromKey out of range");
             if (!inRange(toKey, toInclusive))
                 throw new IllegalArgumentException("toKey out of range");
-            return new DescendingSubMap(m,
-                                        false, toKey,   toInclusive,
-                                        false, fromKey, fromInclusive);
+            return new DescendingSubMap<>(m,
+                                          false, toKey,   toInclusive,
+                                          false, fromKey, fromInclusive);
         }
 
         public NavigableMap<K,V> headMap(K toKey, boolean inclusive) {
             if (!inRange(toKey, inclusive))
                 throw new IllegalArgumentException("toKey out of range");
-            return new DescendingSubMap(m,
-                                        false, toKey, inclusive,
-                                        toEnd, hi,    hiInclusive);
+            return new DescendingSubMap<>(m,
+                                          false, toKey, inclusive,
+                                          toEnd, hi,    hiInclusive);
         }
 
         public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive) {
             if (!inRange(fromKey, inclusive))
                 throw new IllegalArgumentException("fromKey out of range");
-            return new DescendingSubMap(m,
-                                        fromStart, lo, loInclusive,
-                                        false, fromKey, inclusive);
+            return new DescendingSubMap<>(m,
+                                          fromStart, lo, loInclusive,
+                                          false, fromKey, inclusive);
         }
 
         public NavigableMap<K,V> descendingMap() {
             NavigableMap<K,V> mv = descendingMapView;
             return (mv != null) ? mv :
                 (descendingMapView =
-                 new AscendingSubMap(m,
-                                     fromStart, lo, loInclusive,
-                                     toEnd,     hi, hiInclusive));
+                 new AscendingSubMap<>(m,
+                                       fromStart, lo, loInclusive,
+                                       toEnd,     hi, hiInclusive));
         }
 
         Iterator<K> keyIterator() {
@@ -1862,9 +1866,9 @@
         private boolean fromStart = false, toEnd = false;
         private K fromKey, toKey;
         private Object readResolve() {
-            return new AscendingSubMap(TreeMap.this,
-                                       fromStart, fromKey, true,
-                                       toEnd, toKey, false);
+            return new AscendingSubMap<>(TreeMap.this,
+                                         fromStart, fromKey, true,
+                                         toEnd, toKey, false);
         }
         public Set<Map.Entry<K,V>> entrySet() { throw new InternalError(); }
         public K lastKey() { throw new InternalError(); }
@@ -2331,12 +2335,12 @@
      * @param defaultVal if non-null, this default value is used for
      *        each value in the map.  If null, each value is read from
      *        iterator or stream, as described above.
-     * @throws IOException propagated from stream reads. This cannot
+     * @throws java.io.IOException propagated from stream reads. This cannot
      *         occur if str is null.
      * @throws ClassNotFoundException propagated from readObject.
      *         This cannot occur if str is null.
      */
-    private void buildFromSorted(int size, Iterator it,
+    private void buildFromSorted(int size, Iterator<?> it,
                                  java.io.ObjectInputStream str,
                                  V defaultVal)
         throws  java.io.IOException, ClassNotFoundException {
@@ -2359,9 +2363,10 @@
      * @param redLevel the level at which nodes should be red.
      *        Must be equal to computeRedLevel for tree of this size.
      */
+    @SuppressWarnings("unchecked")
     private final Entry<K,V> buildFromSorted(int level, int lo, int hi,
                                              int redLevel,
-                                             Iterator it,
+                                             Iterator<?> it,
                                              java.io.ObjectInputStream str,
                                              V defaultVal)
         throws  java.io.IOException, ClassNotFoundException {
@@ -2391,9 +2396,9 @@
         V value;
         if (it != null) {
             if (defaultVal==null) {
-                Map.Entry<K,V> entry = (Map.Entry<K,V>)it.next();
-                key = entry.getKey();
-                value = entry.getValue();
+                Map.Entry<?,?> entry = (Map.Entry<?,?>)it.next();
+                key = (K)entry.getKey();
+                value = (V)entry.getValue();
             } else {
                 key = (K)it.next();
                 value = defaultVal;
--- a/src/share/classes/java/util/TreeSet.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/TreeSet.java	Tue May 08 07:34:53 2012 -0700
@@ -302,7 +302,7 @@
             m instanceof TreeMap) {
             SortedSet<? extends E> set = (SortedSet<? extends E>) c;
             TreeMap<E,Object> map = (TreeMap<E, Object>) m;
-            Comparator<? super E> cc = (Comparator<? super E>) set.comparator();
+            Comparator<?> cc = set.comparator();
             Comparator<? super E> mc = map.comparator();
             if (cc==mc || (cc != null && cc.equals(mc))) {
                 map.addAllForTreeSet(set, PRESENT);
@@ -469,8 +469,9 @@
      *
      * @return a shallow copy of this set
      */
+    @SuppressWarnings("unchecked")
     public Object clone() {
-        TreeSet<E> clone = null;
+        TreeSet<E> clone;
         try {
             clone = (TreeSet<E>) super.clone();
         } catch (CloneNotSupportedException e) {
@@ -519,14 +520,11 @@
         s.defaultReadObject();
 
         // Read in Comparator
-        Comparator<? super E> c = (Comparator<? super E>) s.readObject();
+        @SuppressWarnings("unchecked")
+            Comparator<? super E> c = (Comparator<? super E>) s.readObject();
 
         // Create backing TreeMap
-        TreeMap<E,Object> tm;
-        if (c==null)
-            tm = new TreeMap<>();
-        else
-            tm = new TreeMap<>(c);
+        TreeMap<E,Object> tm = new TreeMap<>(c);
         m = tm;
 
         // Read in size
--- a/src/share/classes/java/util/WeakHashMap.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/WeakHashMap.java	Tue May 08 07:34:53 2012 -0700
@@ -186,7 +186,7 @@
 
     @SuppressWarnings("unchecked")
     private Entry<K,V>[] newTable(int n) {
-        return (Entry<K,V>[]) new Entry[n];
+        return (Entry<K,V>[]) new Entry<?,?>[n];
     }
 
     /**
--- a/src/share/classes/java/util/regex/Matcher.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/java/util/regex/Matcher.java	Tue May 08 07:34:53 2012 -0700
@@ -759,16 +759,19 @@
             char nextChar = replacement.charAt(cursor);
             if (nextChar == '\\') {
                 cursor++;
+                if (cursor == replacement.length())
+                    throw new IllegalArgumentException(
+                        "character to be escaped is missing");
                 nextChar = replacement.charAt(cursor);
                 result.append(nextChar);
                 cursor++;
             } else if (nextChar == '$') {
                 // Skip past $
                 cursor++;
-                // A StringIndexOutOfBoundsException is thrown if
-                // this "$" is the last character in replacement
-                // string in current implementation, a IAE might be
-                // more appropriate.
+                // Throw IAE if this "$" is the last character in replacement
+                if (cursor == replacement.length())
+                   throw new IllegalArgumentException(
+                        "Illegal group reference: group index is missing");
                 nextChar = replacement.charAt(cursor);
                 int refNum = -1;
                 if (nextChar == '{') {
--- a/src/share/classes/javax/swing/BorderFactory.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/BorderFactory.java	Tue May 08 07:34:53 2012 -0700
@@ -371,7 +371,7 @@
     /**
      * Creates a new titled border with the specified title,
      * the default border type (determined by the current look and feel),
-     * the default text position (sitting on the top line),
+     * the default text position (determined by the current look and feel),
      * the default justification (leading), and the default
      * font and text color (determined by the current look and feel).
      *
@@ -385,7 +385,7 @@
     /**
      * Creates a new titled border with an empty title,
      * the specified border object,
-     * the default text position (sitting on the top line),
+     * the default text position (determined by the current look and feel),
      * the default justification (leading), and the default
      * font and text color (determined by the current look and feel).
      *
@@ -400,7 +400,7 @@
 
     /**
      * Adds a title to an existing border,
-     * with default positioning (sitting on the top line),
+     * with default positioning (determined by the current look and feel),
      * default justification (leading) and the default
      * font and text color (determined by the current look and feel).
      *
@@ -439,7 +439,8 @@
      *<li><code>TitledBorder.ABOVE_BOTTOM</code>
      *<li><code>TitledBorder.BOTTOM</code> (sitting on the bottom line)
      *<li><code>TitledBorder.BELOW_BOTTOM</code>
-     *<li><code>TitledBorder.DEFAULT_POSITION</code> (top)
+     *<li><code>TitledBorder.DEFAULT_POSITION</code> (the title position
+     *  is determined by the current look and feel)
      *</ul>
      * @return the <code>TitledBorder</code> object
      */
@@ -477,7 +478,8 @@
      *<li><code>TitledBorder.ABOVE_BOTTOM</code>
      *<li><code>TitledBorder.BOTTOM</code> (sitting on the bottom line)
      *<li><code>TitledBorder.BELOW_BOTTOM</code>
-     *<li><code>TitledBorder.DEFAULT_POSITION</code> (top)
+     *<li><code>TitledBorder.DEFAULT_POSITION</code> (the title position
+     *  is determined by the current look and feel)
      *</ul>
      * @param titleFont           a Font object specifying the title font
      * @return the TitledBorder object
@@ -516,7 +518,8 @@
      *<li><code>TitledBorder.ABOVE_BOTTOM</code>
      *<li><code>TitledBorder.BOTTOM</code> (sitting on the bottom line)
      *<li><code>TitledBorder.BELOW_BOTTOM</code>
-     *<li><code>TitledBorder.DEFAULT_POSITION</code> (top)
+     *<li><code>TitledBorder.DEFAULT_POSITION</code> (the title position
+     *  is determined by the current look and feel)
      *</ul>
      * @param titleFont   a <code>Font</code> object specifying the title font
      * @param titleColor  a <code>Color</code> object specifying the title color
--- a/src/share/classes/javax/swing/JPopupMenu.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/JPopupMenu.java	Tue May 08 07:34:53 2012 -0700
@@ -359,17 +359,20 @@
         int scrBottomY = scrBounds.y + scrHeight;
 
         // Ensure that popup menu fits the screen
-        if (popupRightX > (long)scrRightX) {
+        if (popupRightX > (long) scrRightX) {
             popupLocation.x = scrRightX - popupSize.width;
-            if( popupLocation.x < scrBounds.x ) {
-                popupLocation.x = scrBounds.x ;
-            }
+        }
+
+        if (popupBottomY > (long) scrBottomY) {
+            popupLocation.y = scrBottomY - popupSize.height;
         }
-        if (popupBottomY > (long)scrBottomY) {
-            popupLocation.y = scrBottomY - popupSize.height;
-            if( popupLocation.y < scrBounds.y ) {
-                popupLocation.y = scrBounds.y;
-            }
+
+        if (popupLocation.x < scrBounds.x) {
+            popupLocation.x = scrBounds.x;
+        }
+
+        if (popupLocation.y < scrBounds.y) {
+            popupLocation.y = scrBounds.y;
         }
 
         return popupLocation;
--- a/src/share/classes/javax/swing/UIDefaults.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/UIDefaults.java	Tue May 08 07:34:53 2012 -0700
@@ -297,7 +297,7 @@
         Map<String, Object> values = resourceCache.get(l);
 
         if (values == null) {
-            values = new HashMap<String, Object>();
+            values = new TextAndMnemonicHashMap();
             for (int i=resourceBundles.size()-1; i >= 0; i--) {
                 String bundleName = resourceBundles.get(i);
                 try {
@@ -1215,4 +1215,120 @@
             return null;
         }
     }
+
+    /**
+     * <code>TextAndMnemonicHashMap</code> stores swing resource strings. Many of strings
+     * can have a mnemonic. For example:
+     *   FileChooser.saveButton.textAndMnemonic=&Save
+     * For this case method get returns "Save" for the key "FileChooser.saveButtonText" and
+     * mnemonic "S" for the key "FileChooser.saveButtonMnemonic"
+     *
+     * There are several patterns for the text and mnemonic suffixes which are checked by the
+     * <code>TextAndMnemonicHashMap</code> class.
+     * Patterns which are converted to the xxx.textAndMnemonic key:
+     * (xxxNameText, xxxNameMnemonic)
+     * (xxxNameText, xxxMnemonic)
+     * (xxx.nameText, xxx.mnemonic)
+     * (xxxText, xxxMnemonic)
+     *
+     * These patterns can have a mnemonic index in format
+     * (xxxDisplayedMnemonicIndex)
+     *
+     * Pattern which is converted to the xxx.titleAndMnemonic key:
+     * (xxxTitle, xxxMnemonic)
+     *
+     */
+    private static class TextAndMnemonicHashMap extends HashMap<String, Object> {
+
+        static final String AND_MNEMONIC = "AndMnemonic";
+        static final String TITLE_SUFFIX = ".titleAndMnemonic";
+        static final String TEXT_SUFFIX = ".textAndMnemonic";
+
+        @Override
+        public Object get(Object key) {
+
+            Object value = super.get(key);
+
+            if (value == null) {
+
+                boolean checkTitle = false;
+
+                String stringKey = key.toString();
+                String compositeKey = null;
+
+                if (stringKey.endsWith(AND_MNEMONIC)) {
+                    return null;
+                }
+
+                if (stringKey.endsWith(".mnemonic")) {
+                    compositeKey = composeKey(stringKey, 9, TEXT_SUFFIX);
+                } else if (stringKey.endsWith("NameMnemonic")) {
+                    compositeKey = composeKey(stringKey, 12, TEXT_SUFFIX);
+                } else if (stringKey.endsWith("Mnemonic")) {
+                    compositeKey = composeKey(stringKey, 8, TEXT_SUFFIX);
+                    checkTitle = true;
+                }
+
+                if (compositeKey != null) {
+                    value = super.get(compositeKey);
+                    if (value == null && checkTitle) {
+                        compositeKey = composeKey(stringKey, 8, TITLE_SUFFIX);
+                        value = super.get(compositeKey);
+                    }
+
+                    return value == null ? null : getMnemonicFromProperty(value.toString());
+                }
+
+                if (stringKey.endsWith("NameText")) {
+                    compositeKey = composeKey(stringKey, 8, TEXT_SUFFIX);
+                } else if (stringKey.endsWith(".nameText")) {
+                    compositeKey = composeKey(stringKey, 9, TEXT_SUFFIX);
+                } else if (stringKey.endsWith("Text")) {
+                    compositeKey = composeKey(stringKey, 4, TEXT_SUFFIX);
+                } else if (stringKey.endsWith("Title")) {
+                    compositeKey = composeKey(stringKey, 5, TITLE_SUFFIX);
+                }
+
+                if (compositeKey != null) {
+                    value = super.get(compositeKey);
+                    return value == null ? null : getTextFromProperty(value.toString());
+                }
+
+                if (stringKey.endsWith("DisplayedMnemonicIndex")) {
+                    compositeKey = composeKey(stringKey, 22, TEXT_SUFFIX);
+                    value = super.get(compositeKey);
+                    if (value == null) {
+                        compositeKey = composeKey(stringKey, 22, TITLE_SUFFIX);
+                        value = super.get(compositeKey);
+                    }
+                    return value == null ? null : getIndexFromProperty(value.toString());
+                }
+            }
+
+            return value;
+        }
+
+        String composeKey(String key, int reduce, String sufix) {
+            return key.substring(0, key.length() - reduce) + sufix;
+        }
+
+        String getTextFromProperty(String text) {
+            return text.replace("&", "");
+        }
+
+        String getMnemonicFromProperty(String text) {
+            int index = text.indexOf('&');
+            if (0 <= index && index < text.length() - 1) {
+                char c = text.charAt(index + 1);
+                return Integer.toString((int) Character.toUpperCase(c));
+            }
+            return null;
+        }
+
+        String getIndexFromProperty(String text) {
+            int index = text.indexOf('&');
+            return (index == -1) ? null : Integer.toString(index);
+        }
+    }
+
 }
--- a/src/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java	Tue May 08 07:34:53 2012 -0700
@@ -875,6 +875,8 @@
                 int availTextWidth = tabScroller.croppedEdge.getCropline() -
                         (textRect.x - tabRect.x) - tabScroller.croppedEdge.getCroppedSideWidth();
                 clippedTitle = SwingUtilities2.clipStringIfNecessary(null, metrics, title, availTextWidth);
+            } else if (!scrollableTabLayoutEnabled() && isHorizontalTabPlacement()) {
+                clippedTitle = SwingUtilities2.clipStringIfNecessary(null, metrics, title, textRect.width);
             }
 
             paintText(g, tabPlacement, font, metrics,
--- a/src/share/classes/javax/swing/plaf/synth/SynthComboPopup.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/plaf/synth/SynthComboPopup.java	Tue May 08 07:34:53 2012 -0700
@@ -26,13 +26,9 @@
 package javax.swing.plaf.synth;
 
 import javax.swing.*;
-import javax.swing.event.*;
-import javax.swing.plaf.basic.*;
+import javax.swing.plaf.ComboBoxUI;
+import javax.swing.plaf.basic.BasicComboPopup;
 import java.awt.*;
-import java.awt.event.*;
-import java.beans.PropertyChangeListener;
-import java.beans.PropertyChangeEvent;
-import java.io.Serializable;
 
 
 /**
@@ -52,6 +48,7 @@
      *
      * @see #createList
      */
+    @Override
     protected void configureList() {
         list.setFont( comboBox.getFont() );
         list.setCellRenderer( comboBox.getRenderer() );
@@ -67,4 +64,27 @@
         }
         installListListeners();
     }
+
+    /**
+     * @inheritDoc
+     *
+     * Overridden to take into account any popup insets specified in
+     * SynthComboBoxUI
+     */
+    @Override
+    protected Rectangle computePopupBounds(int px, int py, int pw, int ph) {
+        ComboBoxUI ui = comboBox.getUI();
+        if (ui instanceof SynthComboBoxUI) {
+            SynthComboBoxUI sui = (SynthComboBoxUI) ui;
+            if (sui.popupInsets != null) {
+                Insets i = sui.popupInsets;
+                return super.computePopupBounds(
+                        px + i.left,
+                        py + i.top,
+                        pw - i.left - i.right,
+                        ph - i.top - i.bottom);
+            }
+        }
+        return super.computePopupBounds(px, py, pw, ph);
+    }
 }
--- a/src/share/classes/javax/swing/text/AbstractDocument.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/text/AbstractDocument.java	Tue May 08 07:34:53 2012 -0700
@@ -31,7 +31,6 @@
 
 import javax.swing.UIManager;
 import javax.swing.undo.*;
-import javax.swing.event.ChangeListener;
 import javax.swing.event.*;
 import javax.swing.tree.TreeNode;
 
@@ -698,28 +697,31 @@
             return;
         }
         DocumentFilter filter = getDocumentFilter();
+        InsertStringResult insertStringResult = null;
 
         writeLock();
+
         try {
             if (filter != null) {
                 filter.insertString(getFilterBypass(), offs, str, a);
-            }
-            else {
-                handleInsertString(offs, str, a);
+            } else {
+                insertStringResult = handleInsertString(offs, str, a);
             }
         } finally {
             writeUnlock();
         }
+
+        processInsertStringResult(insertStringResult);
     }
 
     /**
      * Performs the actual work of inserting the text; it is assumed the
      * caller has obtained a write lock before invoking this.
      */
-    void handleInsertString(int offs, String str, AttributeSet a)
-                         throws BadLocationException {
+    private InsertStringResult handleInsertString(int offs, String str, AttributeSet a)
+            throws BadLocationException {
         if ((str == null) || (str.length() == 0)) {
-            return;
+            return null;
         }
         UndoableEdit u = data.insertString(offs, str);
         DefaultDocumentEvent e =
@@ -746,12 +748,29 @@
         insertUpdate(e, a);
         // Mark the edit as done.
         e.end();
-        fireInsertUpdate(e);
+
+        InsertStringResult result = new InsertStringResult();
+
+        result.documentEvent = e;
+
         // only fire undo if Content implementation supports it
         // undo for the composed text is not supported for now
-        if (u != null &&
-            (a == null || !a.isDefined(StyleConstants.ComposedTextAttribute))) {
-            fireUndoableEditUpdate(new UndoableEditEvent(this, e));
+        if (u != null && (a == null || !a.isDefined(StyleConstants.ComposedTextAttribute))) {
+            result.undoableEditEvent = new UndoableEditEvent(this, e);
+        }
+
+        return result;
+    }
+
+    private void processInsertStringResult(InsertStringResult insertStringResult) {
+        if (insertStringResult == null) {
+            return;
+        }
+
+        fireInsertUpdate(insertStringResult.documentEvent);
+
+        if (insertStringResult.undoableEditEvent != null) {
+            fireUndoableEditUpdate(insertStringResult.undoableEditEvent);
         }
     }
 
@@ -2947,12 +2966,10 @@
      */
     class UndoRedoDocumentEvent implements DocumentEvent {
         private DefaultDocumentEvent src = null;
-        private boolean isUndo;
         private EventType type = null;
 
         public UndoRedoDocumentEvent(DefaultDocumentEvent src, boolean isUndo) {
             this.src = src;
-            this.isUndo = isUndo;
             if(isUndo) {
                 if(src.getType().equals(EventType.INSERT)) {
                     type = EventType.REMOVE;
@@ -3106,13 +3123,23 @@
         public void insertString(int offset, String string,
                                  AttributeSet attr) throws
                                         BadLocationException {
-            handleInsertString(offset, string, attr);
+            InsertStringResult insertStringResult = handleInsertString(offset, string, attr);
+
+            processInsertStringResult(insertStringResult);
         }
 
         public void replace(int offset, int length, String text,
                             AttributeSet attrs) throws BadLocationException {
             handleRemove(offset, length);
-            handleInsertString(offset, text, attrs);
+
+            InsertStringResult insertStringResult = handleInsertString(offset, text, attrs);
+
+            processInsertStringResult(insertStringResult);
         }
     }
+
+    private static class InsertStringResult {
+        DefaultDocumentEvent documentEvent;
+        UndoableEditEvent undoableEditEvent;
+    }
 }
--- a/src/share/classes/javax/swing/text/DefaultEditorKit.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/javax/swing/text/DefaultEditorKit.java	Tue May 08 07:34:53 2012 -0700
@@ -24,6 +24,8 @@
  */
 package javax.swing.text;
 
+import sun.awt.SunToolkit;
+
 import java.io.*;
 import java.awt.*;
 import java.awt.event.ActionEvent;
@@ -869,11 +871,18 @@
                 }
                 String content = e.getActionCommand();
                 int mod = e.getModifiers();
-                if ((content != null) && (content.length() > 0) &&
-                    ((mod & ActionEvent.ALT_MASK) == (mod & ActionEvent.CTRL_MASK))) {
-                    char c = content.charAt(0);
-                    if ((c >= 0x20) && (c != 0x7F)) {
-                        target.replaceSelection(content);
+                if ((content != null) && (content.length() > 0)) {
+                    boolean isPrintableMask = true;
+                    Toolkit tk = Toolkit.getDefaultToolkit();
+                    if (tk instanceof SunToolkit) {
+                        isPrintableMask = ((SunToolkit)tk).isPrintableCharacterModifiersMask(mod);
+                    }
+
+                    if (isPrintableMask) {
+                        char c = content.charAt(0);
+                        if ((c >= 0x20) && (c != 0x7F)) {
+                            target.replaceSelection(content);
+                        }
                     }
                 }
             }
--- a/src/share/classes/sun/awt/AppContext.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/awt/AppContext.java	Tue May 08 07:34:53 2012 -0700
@@ -46,6 +46,7 @@
 import java.util.concurrent.locks.Condition;
 import java.util.concurrent.locks.Lock;
 import java.util.concurrent.locks.ReentrantLock;
+import java.util.concurrent.atomic.AtomicInteger;
 
 /**
  * The AppContext is a table referenced by ThreadGroup which stores
@@ -194,6 +195,15 @@
         return isDisposed;
     }
 
+    /*
+     * The total number of AppContexts, system-wide.  This number is
+     * incremented at the beginning of the constructor, and decremented
+     * at the end of dispose().  getAppContext() checks to see if this
+     * number is 1.  If so, it returns the sole AppContext without
+     * checking Thread.currentThread().
+     */
+    private static final AtomicInteger numAppContexts = new AtomicInteger(0);
+
     static {
         // On the main Thread, we get the ThreadGroup, make a corresponding
         // AppContext, and instantiate the Java EventQueue.  This way, legacy
@@ -209,22 +219,12 @@
                     parentThreadGroup = currentThreadGroup.getParent();
                 }
                 mainAppContext = new AppContext(currentThreadGroup);
-                numAppContexts = 1;
                 return null;
             }
         });
     }
 
     /*
-     * The total number of AppContexts, system-wide.  This number is
-     * incremented at the beginning of the constructor, and decremented
-     * at the end of dispose().  getAppContext() checks to see if this
-     * number is 1.  If so, it returns the sole AppContext without
-     * checking Thread.currentThread().
-     */
-    private static volatile int numAppContexts;
-
-    /*
      * The context ClassLoader that was used to create this AppContext.
      */
     private final ClassLoader contextClassLoader;
@@ -243,7 +243,7 @@
      * @since   1.2
      */
     AppContext(ThreadGroup threadGroup) {
-        numAppContexts++;
+        numAppContexts.incrementAndGet();
 
         this.threadGroup = threadGroup;
         threadGroup2appContext.put(threadGroup, this);
@@ -278,7 +278,7 @@
      * @since   1.2
      */
     public final static AppContext getAppContext() {
-        if (numAppContexts == 1)   // If there's only one system-wide,
+        if (numAppContexts.get() == 1)   // If there's only one system-wide,
             return mainAppContext; // return the main system AppContext.
 
         AppContext appContext = threadAppContext.get();
@@ -513,7 +513,7 @@
             this.table.clear(); // Clear out the Hashtable to ease garbage collection
         }
 
-        numAppContexts--;
+        numAppContexts.decrementAndGet();
 
         mostRecentKeyValue = null;
     }
@@ -804,7 +804,7 @@
                 return getAppContext().isDisposed();
             }
             public boolean isMainAppContext() {
-                return (numAppContexts == 1);
+                return (numAppContexts.get() == 1);
             }
         });
     }
--- a/src/share/classes/sun/awt/SunToolkit.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/awt/SunToolkit.java	Tue May 08 07:34:53 2012 -0700
@@ -1126,6 +1126,16 @@
     }
 
     /**
+     * Tests whether specified key modifiers mask can be used to enter a printable
+     * character. This is a default implementation of this method, which reflects
+     * the way things work on Windows: here, pressing ctrl + alt allows user to enter
+     * characters from the extended character set (like euro sign or math symbols)
+     */
+    public boolean isPrintableCharacterModifiersMask(int mods) {
+        return ((mods & InputEvent.ALT_MASK) == (mods & InputEvent.CTRL_MASK));
+    }
+
+    /**
      * Returns a new input method window, with behavior as specified in
      * {@link java.awt.im.spi.InputMethodContext#createInputMethodWindow}.
      * If the inputContext is not null, the window should return it from its
--- a/src/share/classes/sun/awt/image/ImageWatched.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/awt/image/ImageWatched.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2012, Oracle and/or its affiliates. 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
@@ -143,6 +143,7 @@
         if (iw != null && !isWatcher(iw)) {
             watcherList = new WeakLink(iw, watcherList);
         }
+        watcherList = watcherList.removeWatcher(null);
     }
 
     public synchronized boolean isWatcher(ImageObserver iw) {
--- a/src/share/classes/sun/font/FontManager.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/font/FontManager.java	Tue May 08 07:34:53 2012 -0700
@@ -32,10 +32,14 @@
 
 import javax.swing.plaf.FontUIResource;
 
+import javax.tools.annotation.GenerateNativeHeader;
+
 /**
  * Interface between Java Fonts (java.awt.Font) and the underlying
  * font files/native font resources and the Java and native font scalers.
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public interface FontManager {
 
     // These constants are used in findFont().
--- a/src/share/classes/sun/nio/ch/DatagramChannelImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/ch/DatagramChannelImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2012, Oracle and/or its affiliates. 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
@@ -970,7 +970,8 @@
 
     protected void implCloseSelectableChannel() throws IOException {
         synchronized (stateLock) {
-            nd.preClose(fd);
+            if (state != ST_KILLED)
+                nd.preClose(fd);
             ResourceManager.afterUdpClose();
 
             // if member of mulitcast group then invalidate all keys
--- a/src/share/classes/sun/nio/ch/IOStatus.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/ch/IOStatus.java	Tue May 08 07:34:53 2012 -0700
@@ -25,9 +25,12 @@
 
 package sun.nio.ch;
 
+import javax.tools.annotation.GenerateNativeHeader;
 
 // Constants for reporting I/O status
 
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public final class IOStatus {
 
     private IOStatus() { }
--- a/src/share/classes/sun/nio/ch/ServerSocketChannelImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/ch/ServerSocketChannelImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -261,7 +261,8 @@
 
     protected void implCloseSelectableChannel() throws IOException {
         synchronized (stateLock) {
-            nd.preClose(fd);
+            if (state != ST_KILLED)
+                nd.preClose(fd);
             long th = thread;
             if (th != 0)
                 NativeThread.signal(th);
--- a/src/share/classes/sun/nio/ch/SocketChannelImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/ch/SocketChannelImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -816,7 +816,8 @@
             // channel from using the old fd, which might be recycled in the
             // meantime and allocated to an entirely different channel.
             //
-            nd.preClose(fd);
+            if (state != ST_KILLED)
+                nd.preClose(fd);
 
             // Signal native threads, if needed.  If a target thread is not
             // currently blocked in an I/O operation then no harm is done since
--- a/src/share/classes/sun/nio/ch/sctp/SctpStdSocketOption.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/ch/sctp/SctpStdSocketOption.java	Tue May 08 07:34:53 2012 -0700
@@ -25,7 +25,10 @@
 package sun.nio.ch.sctp;
 
 import com.sun.nio.sctp.SctpSocketOption;
+import javax.tools.annotation.GenerateNativeHeader;
 
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class SctpStdSocketOption<T>
     implements SctpSocketOption<T>
 {
--- a/src/share/classes/sun/nio/cs/ext/SJIS_0213.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/nio/cs/ext/SJIS_0213.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2012, Oracle and/or its affiliates. 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
@@ -31,6 +31,8 @@
 import java.nio.charset.CharsetEncoder;
 import java.nio.charset.CharsetDecoder;
 import java.nio.charset.CoderResult;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
 import java.util.Arrays;
 import sun.nio.cs.CharsetMapping;
 
@@ -73,8 +75,12 @@
         return new Encoder(this);
     }
 
-    static CharsetMapping mapping =
-        CharsetMapping.get(SJIS_0213.class.getResourceAsStream("sjis0213.dat"));
+    static CharsetMapping mapping = AccessController.doPrivileged(
+        new PrivilegedAction<CharsetMapping>() {
+            public CharsetMapping run() {
+                return CharsetMapping.get(SJIS_0213.class.getResourceAsStream("sjis0213.dat"));
+            }
+        });
 
     protected static class Decoder extends CharsetDecoder {
         protected static final char UNMAPPABLE = CharsetMapping.UNMAPPABLE_DECODING;
--- a/src/share/classes/sun/security/ec/ECParameters.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ec/ECParameters.java	Tue May 08 07:34:53 2012 -0700
@@ -87,8 +87,8 @@
         if ((data.length == 0) || (data[0] != 4)) {
             throw new IOException("Only uncompressed point format supported");
         }
-        int n = (curve.getField().getFieldSize() + 7 ) >> 3;
-        if (data.length != (n * 2) + 1) {
+        int n = data.length / 2;
+        if (n > ((curve.getField().getFieldSize() + 7 ) >> 3)) {
             throw new IOException("Point does not match field size");
         }
         byte[] xb = new byte[n];
--- a/src/share/classes/sun/security/krb5/Credentials.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/krb5/Credentials.java	Tue May 08 07:34:53 2012 -0700
@@ -330,12 +330,17 @@
         CredentialsCache ccache =
             CredentialsCache.getInstance(princ, ticketCache);
 
-        if (ccache == null)
+        if (ccache == null) {
             return null;
+        }
 
         sun.security.krb5.internal.ccache.Credentials tgtCred  =
             ccache.getDefaultCreds();
 
+        if (tgtCred == null) {
+            return null;
+        }
+
         if (EType.isSupported(tgtCred.getEType())) {
             return tgtCred.setKrbCreds();
         } else {
@@ -375,19 +380,21 @@
             cache = CredentialsCache.getInstance();
         }
         if (cache != null) {
-            if (DEBUG) {
-                System.out.println(">>> KrbCreds found the default ticket " +
-                                   "granting ticket in credential cache.");
-            }
             sun.security.krb5.internal.ccache.Credentials temp =
                 cache.getDefaultCreds();
-            if (EType.isSupported(temp.getEType())) {
-                result = temp.setKrbCreds();
-            } else {
+            if (temp != null) {
                 if (DEBUG) {
-                    System.out.println(
-                        ">>> unsupported key type found the default TGT: " +
-                        temp.getEType());
+                    System.out.println(">>> KrbCreds found the default ticket"
+                            + " granting ticket in credential cache.");
+                }
+                if (EType.isSupported(temp.getEType())) {
+                    result = temp.setKrbCreds();
+                } else {
+                    if (DEBUG) {
+                        System.out.println(
+                            ">>> unsupported key type found the default TGT: " +
+                            temp.getEType());
+                    }
                 }
             }
         }
--- a/src/share/classes/sun/security/ssl/AppOutputStream.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ssl/AppOutputStream.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2012, Oracle and/or its affiliates. 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
@@ -91,9 +91,20 @@
         // however they like; if we buffered here, they couldn't.
         try {
             do {
+                boolean holdRecord = false;
                 int howmuch;
                 if (isFirstRecordOfThePayload && c.needToSplitPayload()) {
                     howmuch = Math.min(0x01, r.availableDataBytes());
+                     /*
+                      * Nagle's algorithm (TCP_NODELAY) was coming into
+                      * play here when writing short (split) packets.
+                      * Signal to the OutputRecord code to internally
+                      * buffer this small packet until the next outbound
+                      * packet (of any type) is written.
+                      */
+                     if ((len != 1) && (howmuch == 1)) {
+                         holdRecord = true;
+                     }
                 } else {
                     howmuch = Math.min(len, r.availableDataBytes());
                 }
@@ -108,7 +119,7 @@
                     off += howmuch;
                     len -= howmuch;
                 }
-                c.writeRecord(r);
+                c.writeRecord(r, holdRecord);
                 c.checkWrite();
             } while (len > 0);
         } catch (Exception e) {
--- a/src/share/classes/sun/security/ssl/EngineOutputRecord.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ssl/EngineOutputRecord.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -155,8 +155,9 @@
      * data to be generated/output before the exception is ever
      * generated.
      */
-    void writeBuffer(OutputStream s, byte [] buf, int off, int len)
-            throws IOException {
+    @Override
+    void writeBuffer(OutputStream s, byte [] buf, int off, int len,
+            int debugOffset) throws IOException {
         /*
          * Copy data out of buffer, it's ready to go.
          */
@@ -196,7 +197,8 @@
             // compress();              // eventually
             addMAC(writeMAC);
             encrypt(writeCipher);
-            write((OutputStream)null);  // send down for processing
+            write((OutputStream)null, false,  // send down for processing
+                (ByteArrayOutputStream)null);
         }
         return;
     }
--- a/src/share/classes/sun/security/ssl/OutputRecord.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ssl/OutputRecord.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2012, Oracle and/or its affiliates. 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
@@ -28,6 +28,7 @@
 
 import java.io.*;
 import java.nio.*;
+import java.util.Arrays;
 
 import javax.net.ssl.SSLException;
 import sun.misc.HexDumpEncoder;
@@ -227,6 +228,24 @@
     }
 
     /*
+     * Increases the capacity if necessary to ensure that it can hold
+     * at least the number of elements specified by the minimum
+     * capacity argument.
+     *
+     * Note that the increased capacity is only can be used for held
+     * record buffer. Please DO NOT update the availableDataBytes()
+     * according to the expended buffer capacity.
+     *
+     * @see availableDataBytes()
+     */
+    private void ensureCapacity(int minCapacity) {
+        // overflow-conscious code
+        if (minCapacity > buf.length) {
+            buf = Arrays.copyOf(buf, minCapacity);
+        }
+    }
+
+    /*
      * Return the type of SSL record that's buffered here.
      */
     final byte contentType() {
@@ -243,7 +262,9 @@
      * that synchronization be done elsewhere.  Also, this does its work
      * in a single low level write, for efficiency.
      */
-    void write(OutputStream s) throws IOException {
+    void write(OutputStream s, boolean holdRecord,
+            ByteArrayOutputStream heldRecordBuffer) throws IOException {
+
         /*
          * Don't emit content-free records.  (Even change cipher spec
          * messages have a byte of data!)
@@ -300,7 +321,49 @@
         }
         firstMessage = false;
 
-        writeBuffer(s, buf, 0, count);
+        /*
+         * The upper levels may want us to delay sending this packet so
+         * multiple TLS Records can be sent in one (or more) TCP packets.
+         * If so, add this packet to the heldRecordBuffer.
+         *
+         * NOTE:  all writes have been synchronized by upper levels.
+         */
+        int debugOffset = 0;
+        if (holdRecord) {
+            /*
+             * If holdRecord is true, we must have a heldRecordBuffer.
+             *
+             * Don't worry about the override of writeBuffer(), because
+             * when holdRecord is true, the implementation in this class
+             * will be used.
+             */
+            writeBuffer(heldRecordBuffer, buf, 0, count, debugOffset);
+        } else {
+            // It's time to send, do we have buffered data?
+            // May or may not have a heldRecordBuffer.
+            if (heldRecordBuffer != null && heldRecordBuffer.size() > 0) {
+                int heldLen = heldRecordBuffer.size();
+
+                // Ensure the capacity of this buffer.
+                ensureCapacity(count + heldLen);
+
+                // Slide everything in the buffer to the right.
+                System.arraycopy(buf, 0, buf, heldLen, count);
+
+                // Prepend the held record to the buffer.
+                System.arraycopy(
+                    heldRecordBuffer.toByteArray(), 0, buf, 0, heldLen);
+                count += heldLen;
+
+                // Clear the held buffer.
+                heldRecordBuffer.reset();
+
+                // The held buffer has been dumped, set the debug dump offset.
+                debugOffset = heldLen;
+            }
+            writeBuffer(s, buf, 0, count, debugOffset);
+        }
+
         reset();
     }
 
@@ -309,15 +372,17 @@
      * we'll override this method and let it take the appropriate
      * action.
      */
-    void writeBuffer(OutputStream s, byte [] buf, int off, int len)
-            throws IOException {
+    void writeBuffer(OutputStream s, byte [] buf, int off, int len,
+            int debugOffset) throws IOException {
         s.write(buf, off, len);
         s.flush();
 
+        // Output only the record from the specified debug offset.
         if (debug != null && Debug.isOn("packet")) {
             try {
                 HexDumpEncoder hd = new HexDumpEncoder();
-                ByteBuffer bb = ByteBuffer.wrap(buf, off, len);
+                ByteBuffer bb = ByteBuffer.wrap(
+                        buf, off + debugOffset, len - debugOffset);
 
                 System.out.println("[Raw write]: length = " +
                     bb.remaining());
--- a/src/share/classes/sun/security/ssl/SSLContextImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ssl/SSLContextImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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
@@ -774,12 +774,8 @@
     // the delegated trust manager
     private final X509TrustManager tm;
 
-    // Cache the trusted certificate to optimize the performance.
-    private final Collection<X509Certificate> trustedCerts = new HashSet<>();
-
     AbstractTrustManagerWrapper(X509TrustManager tm) {
         this.tm = tm;
-        Collections.addAll(trustedCerts, tm.getAcceptedIssuers());
     }
 
     @Override
@@ -920,6 +916,13 @@
         try {
             // Does the certificate chain end with a trusted certificate?
             int checkedLength = chain.length - 1;
+
+            Collection<X509Certificate> trustedCerts = new HashSet<>();
+            X509Certificate[] certs = tm.getAcceptedIssuers();
+            if ((certs != null) && (certs.length > 0)){
+                Collections.addAll(trustedCerts, certs);
+            }
+
             if (trustedCerts.contains(chain[checkedLength])) {
                     checkedLength--;
             }
--- a/src/share/classes/sun/security/ssl/SSLSocketImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/security/ssl/SSLSocketImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2012, Oracle and/or its affiliates. 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
@@ -374,6 +374,12 @@
      */
     private boolean isFirstAppOutputRecord = true;
 
+    /*
+     * If AppOutputStream needs to delay writes of small packets, we
+     * will use this to store the data until we actually do the write.
+     */
+    private ByteArrayOutputStream heldRecordBuffer = null;
+
     //
     // CONSTRUCTORS AND INITIALIZATION CODE
     //
@@ -654,13 +660,24 @@
     //
 
     /*
+     * AppOutputStream calls may need to buffer multiple outbound
+     * application packets.
+     *
+     * All other writeRecord() calls will not buffer, so do not hold
+     * these records.
+     */
+    void writeRecord(OutputRecord r) throws IOException {
+        writeRecord(r, false);
+    }
+
+    /*
      * Record Output. Application data can't be sent until the first
      * handshake establishes a session.
      *
      * NOTE:  we let empty records be written as a hook to force some
      * TCP-level activity, notably handshaking, to occur.
      */
-    void writeRecord(OutputRecord r) throws IOException {
+    void writeRecord(OutputRecord r, boolean holdRecord) throws IOException {
         /*
          * The loop is in case of HANDSHAKE --> ERROR transitions, etc
          */
@@ -731,7 +748,7 @@
                 try {
                     if (writeLock.tryLock(getSoLinger(), TimeUnit.SECONDS)) {
                         try {
-                            writeRecordInternal(r);
+                            writeRecordInternal(r, holdRecord);
                         } finally {
                             writeLock.unlock();
                         }
@@ -779,7 +796,7 @@
             } else {
                 writeLock.lock();
                 try {
-                    writeRecordInternal(r);
+                    writeRecordInternal(r, holdRecord);
                 } finally {
                     writeLock.unlock();
                 }
@@ -787,11 +804,29 @@
         }
     }
 
-    private void writeRecordInternal(OutputRecord r) throws IOException {
+    private void writeRecordInternal(OutputRecord r,
+            boolean holdRecord) throws IOException {
+
         // r.compress(c);
         r.addMAC(writeMAC);
         r.encrypt(writeCipher);
-        r.write(sockOutput);
+
+        if (holdRecord) {
+            // If we were requested to delay the record due to possibility
+            // of Nagle's being active when finally got to writing, and
+            // it's actually not, we don't really need to delay it.
+            if (getTcpNoDelay()) {
+                holdRecord = false;
+            } else {
+                // We need to hold the record, so let's provide
+                // a per-socket place to do it.
+                if (heldRecordBuffer == null) {
+                    // Likely only need 37 bytes.
+                    heldRecordBuffer = new ByteArrayOutputStream(40);
+                }
+            }
+        }
+        r.write(sockOutput, holdRecord, heldRecordBuffer);
 
         /*
          * Check the sequence number state
Binary file src/share/classes/sun/text/resources/ubidi.icu has changed
Binary file src/share/classes/sun/text/resources/unorm.icu has changed
Binary file src/share/classes/sun/text/resources/uprops.icu has changed
--- a/src/share/classes/sun/tools/java/ClassPath.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/tools/java/ClassPath.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1994, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1994, 2012, Oracle and/or its affiliates. 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
@@ -141,7 +141,7 @@
         } else {
             StringBuilder sb = new StringBuilder(patharray[0]);
             for (int i = 1; i < patharray.length; i++) {
-                sb.append(File.separator);
+                sb.append(File.pathSeparatorChar);
                 sb.append(patharray[i]);
             }
             this.pathstr = sb.toString();
--- a/src/share/classes/sun/tools/jcmd/JCmd.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/tools/jcmd/JCmd.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *com.sun.tools.attach.AttachNotSupportedException
 
@@ -142,17 +142,20 @@
         // Cast to HotSpotVirtualMachine as this is an
         // implementation specific method.
         HotSpotVirtualMachine hvm = (HotSpotVirtualMachine) vm;
-        try (InputStream in = hvm.executeJCmd(command);) {
-            // read to EOF and just print output
-            byte b[] = new byte[256];
-            int n;
-            do {
-                n = in.read(b);
-                if (n > 0) {
-                    String s = new String(b, 0, n, "UTF-8");
-                    System.out.print(s);
-                }
-            } while (n > 0);
+        String lines[] = command .split("\\n");
+        for (String line : lines) {
+            try (InputStream in = hvm.executeJCmd(line);) {
+                // read to EOF and just print output
+                byte b[] = new byte[256];
+                int n;
+                do {
+                    n = in.read(b);
+                    if (n > 0) {
+                        String s = new String(b, 0, n, "UTF-8");
+                        System.out.print(s);
+                    }
+                } while (n > 0);
+            }
         }
         vm.detach();
     }
--- a/src/share/classes/sun/util/resources/CurrencyNames_es_PE.properties	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/CurrencyNames_es_PE.properties	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
-# 
-# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+#
+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. 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
@@ -21,18 +21,46 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-# 
+#
 
-# (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved
-# (C) Copyright IBM Corp. 1996 - 1999 - All Rights Reserved
+#
+# COPYRIGHT AND PERMISSION NOTICE
+#
+# Copyright (C) 1991-2012 Unicode, Inc. All rights reserved.
+# Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
 #
-# The original version of this source code and documentation
-# is copyrighted and owned by Taligent, Inc., a wholly-owned
-# subsidiary of IBM. These materials are provided under terms
-# of a License Agreement between Taligent and Sun. This technology
-# is protected by multiple US and International patents.
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of the Unicode data files and any associated documentation (the
+# "Data Files") or Unicode software and any associated documentation
+# (the "Software") to deal in the Data Files or Software without
+# restriction, including without limitation the rights to use, copy,
+# modify, merge, publish, distribute, and/or sell copies of the Data
+# Files or Software, and to permit persons to whom the Data Files or
+# Software are furnished to do so, provided that (a) the above copyright
+# notice(s) and this permission notice appear with all copies of the
+# Data Files or Software, (b) both the above copyright notice(s) and
+# this permission notice appear in associated documentation, and (c)
+# there is clear notice in each modified Data File or in the Software as
+# well as in the documentation associated with the Data File(s) or
+# Software that the data or software has been modified.
 #
-# This notice and attribution to Taligent may not be removed.
-# Taligent is a registered trademark of Taligent, Inc.
+# THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+# ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT
+# HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR
+# ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR
+# SOFTWARE.
+#
+# Except as contained in this notice, the name of a copyright holder
+# shall not be used in advertising or otherwise to promote the sale, use
+# or other dealings in these Data Files or Software without prior
+# written authorization of the copyright holder.
 
-PEN=S/
+#
+# Generated automatically from the Common Locale Data Repository. DO NOT EDIT!
+#
+PEN=S/.
--- a/src/share/classes/sun/util/resources/TimeZoneNames.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "French Guiana Summer Time", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Samara Summer Time", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Volgograd Summer Time", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_de.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_de.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Franz\u00f6sisch-Guiana Sommerzeit", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Samarische Sommerzeit", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Wolgograder Sommerzeit", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_es.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_es.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Hora de verano de la Guayana Francesa", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Hora de verano de Samara", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Hora de verano de Volgogrado", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_fr.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_fr.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Heure d'\u00e9t\u00e9 de Guyane fran\u00e7aise", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Heure d'\u00e9t\u00e9 de Samara", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Heure d'\u00e9t\u00e9 de Volgograd", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_it.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_it.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Ora estiva della Guyana Francese", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Ora estiva di Samara", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Ora estiva di Volgograd", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_ja.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_ja.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "\u4ecf\u9818\u30ae\u30a2\u30ca\u590f\u6642\u9593", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "\u30b5\u30de\u30e9\u590f\u6642\u9593", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "\u30dc\u30eb\u30b4\u30b0\u30e9\u30fc\u30c9\u590f\u6642\u9593", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_ko.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_ko.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "\ud504\ub791\uc2a4\ub839 \uae30\uc544\ub098 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "\uc0ac\ub9c8\ub77c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "\ubcfc\uace0\uadf8\ub77c\ub4dc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Fuso hor\u00e1rio de ver\u00e3o da Guiana Francesa", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Fuso hor\u00e1rio de ver\u00e3o de Samara", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Fuso hor\u00e1rio de ver\u00e3o de Volgogrado", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_sv.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_sv.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "Franska Guyana, sommartid", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "Samara, sommartid", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "Volgograd, sommartid", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "\u6cd5\u5c5e\u572d\u4e9a\u90a3\u590f\u4ee4\u65f6", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -678,7 +679,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -699,14 +700,14 @@
                                             "\u6c99\u9a6c\u62c9\u590f\u4ee4\u65f6", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -715,7 +716,7 @@
                                                "\u4f0f\u5c14\u52a0\u683c\u52d2\u590f\u4ee4\u65f6", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java	Tue May 08 07:34:53 2012 -0700
@@ -333,6 +333,7 @@
                                               "\u6cd5\u5c6c\u572d\u4e9e\u90a3\u590f\u4ee4\u6642\u9593", "GFST"}},
             {"America/Cayman", EST},
             {"America/Chihuahua", MST},
+            {"America/Creston", MST},
             {"America/Coral_Harbour", EST},
             {"America/Cordoba", AGT},
             {"America/Costa_Rica", CST},
@@ -679,7 +680,7 @@
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
             {"Europe/Kaliningrad", FET},
-            {"Europe/Kiev", FET},
+            {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
             {"Europe/London", GMTBST},
@@ -700,14 +701,14 @@
                                             "\u6c99\u99ac\u62c9\u590f\u4ee4\u6642\u9593", "SAMST"}},
             {"Europe/San_Marino", CET},
             {"Europe/Sarajevo", CET},
-            {"Europe/Simferopol", FET},
+            {"Europe/Simferopol", EET},
             {"Europe/Skopje", CET},
             {"Europe/Sofia", EET},
             {"Europe/Stockholm", CET},
             {"Europe/Tallinn", EET},
             {"Europe/Tirane", CET},
             {"Europe/Tiraspol", EET},
-            {"Europe/Uzhgorod", FET},
+            {"Europe/Uzhgorod", EET},
             {"Europe/Vaduz", CET},
             {"Europe/Vatican", CET},
             {"Europe/Vienna", CET},
@@ -716,7 +717,7 @@
                                                "\u4f0f\u723e\u52a0\u683c\u52d2\u590f\u4ee4\u6642\u9593", "VOLST"}},
             {"Europe/Warsaw", CET},
             {"Europe/Zagreb", CET},
-            {"Europe/Zaporozhye", FET},
+            {"Europe/Zaporozhye", EET},
             {"Europe/Zurich", CET},
             {"GB", GMTBST},
             {"GB-Eire", GMTBST},
--- a/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java	Tue May 08 07:34:53 2012 -0700
@@ -78,7 +78,7 @@
         }
         try {
             // only support legacy JAR URL syntax  jar:{uri}!/{entry} for now
-            String spec = uri.getSchemeSpecificPart();
+            String spec = uri.getRawSchemeSpecificPart();
             int sep = spec.indexOf("!/");
             if (sep != -1)
                 spec = spec.substring(0, sep);
--- a/src/share/lib/security/java.security	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/lib/security/java.security	Tue May 08 07:34:53 2012 -0700
@@ -123,7 +123,7 @@
 # passed to checkPackageAccess unless the
 # corresponding RuntimePermission ("accessClassInPackage."+package) has
 # been granted.
-package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.
+package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.
 
 #
 # List of comma-separated packages that start with or equal this string
--- a/src/share/lib/security/java.security-macosx	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/lib/security/java.security-macosx	Tue May 08 07:34:53 2012 -0700
@@ -124,7 +124,7 @@
 # passed to checkPackageAccess unless the
 # corresponding RuntimePermission ("accessClassInPackage."+package) has
 # been granted.
-package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,apple.
+package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,apple.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.
 
 #
 # List of comma-separated packages that start with or equal this string
--- a/src/share/lib/security/java.security-solaris	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/lib/security/java.security-solaris	Tue May 08 07:34:53 2012 -0700
@@ -125,7 +125,7 @@
 # passed to checkPackageAccess unless the
 # corresponding RuntimePermission ("accessClassInPackage."+package) has
 # been granted.
-package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.
+package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.
 
 #
 # List of comma-separated packages that start with or equal this string
--- a/src/share/lib/security/java.security-windows	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/lib/security/java.security-windows	Tue May 08 07:34:53 2012 -0700
@@ -124,7 +124,7 @@
 # passed to checkPackageAccess unless the
 # corresponding RuntimePermission ("accessClassInPackage."+package) has
 # been granted.
-package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.
+package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.
 
 #
 # List of comma-separated packages that start with or equal this string
--- a/src/share/native/sun/font/sunFont.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/share/native/sun/font/sunFont.c	Tue May 08 07:34:53 2012 -0700
@@ -29,7 +29,7 @@
 #include "jlong.h"
 #include "sunfontids.h"
 #include "fontscalerdefs.h"
-#include "sun_font_FontManager.h"
+#include "sun_font_SunFontManager.h"
 #include "sun_font_NullFontScaler.h"
 #include "sun_font_StrikeCache.h"
 
--- a/src/solaris/bin/java_md.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/bin/java_md.c	Tue May 08 07:34:53 2012 -0700
@@ -37,10 +37,10 @@
 #include "manifest_info.h"
 #include "version_comp.h"
 
-#ifdef __linux__
+#ifdef __solaris__
+#include <thread.h>
+#else
 #include <pthread.h>
-#else
-#include <thread.h>
 #endif
 
 #define JVM_DLL "libjvm.so"
@@ -1434,7 +1434,18 @@
 int
 ContinueInNewThread0(int (JNICALL *continuation)(void *), jlong stack_size, void * args) {
     int rslt;
-#ifdef __linux__
+#ifdef __solaris__
+    thread_t tid;
+    long flags = 0;
+    if (thr_create(NULL, stack_size, (void *(*)(void *))continuation, args, flags, &tid) == 0) {
+      void * tmp;
+      thr_join(tid, NULL, &tmp);
+      rslt = (int)tmp;
+    } else {
+      /* See below. Continue in current thread if thr_create() failed */
+      rslt = continuation(args);
+    }
+#else
     pthread_t tid;
     pthread_attr_t attr;
     pthread_attr_init(&attr);
@@ -1459,17 +1470,6 @@
     }
 
     pthread_attr_destroy(&attr);
-#else
-    thread_t tid;
-    long flags = 0;
-    if (thr_create(NULL, stack_size, (void *(*)(void *))continuation, args, flags, &tid) == 0) {
-      void * tmp;
-      thr_join(tid, NULL, &tmp);
-      rslt = (int)tmp;
-    } else {
-      /* See above. Continue in current thread if thr_create() failed */
-      rslt = continuation(args);
-    }
 #endif
     return rslt;
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/solaris/classes/java/lang/ClassLoaderHelper.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package java.lang;
+
+import java.io.File;
+
+class ClassLoaderHelper {
+
+    private ClassLoaderHelper() {}
+
+    /**
+     * Returns an alternate path name for the given file
+     * such that if the original pathname did not exist, then the
+     * file may be located at the alternate location.
+     * For most platforms, this behavior is not supported and returns null.
+     */
+    static File mapAlternativeName(File lib) {
+        return null;
+    }
+}
--- a/src/solaris/classes/sun/awt/X11/XComponentPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/awt/X11/XComponentPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -82,7 +82,7 @@
 
     boolean paintPending = false;
     boolean isLayouting = false;
-    boolean enabled;
+    private boolean enabled;
 
     // Actually used only by XDecoratedPeer
     protected int boundsOperation;
@@ -128,9 +128,6 @@
     }
     void postInit(XCreateWindowParams params) {
         super.postInit(params);
-        Color c;
-        Font  f;
-        Cursor cursor;
 
         pSetCursor(target.getCursor());
 
@@ -143,19 +140,7 @@
             reshape(r.x, r.y, r.width, r.height);
         }
 
-        enabled = target.isEnabled();
-
-        // If any of our heavyweight ancestors are disable, we should be too
-        // See 6176875 for more information
-        Component comp = target;
-        while( !(comp == null || comp instanceof Window) ) {
-            comp = comp.getParent();
-            if( comp != null && !comp.isEnabled() && !comp.isLightweight() ){
-                setEnabled(false);
-                break;
-            }
-        }
-        enableLog.fine("Initial enable state: {0}", Boolean.valueOf(enabled));
+        setEnabled(target.isEnabled());
 
         if (target.isVisible()) {
             setVisible(true);
@@ -384,45 +369,48 @@
         setVisible(false);
     }
 
-
     /**
      * @see java.awt.peer.ComponentPeer
      */
-    public void setEnabled(boolean value) {
-        enableLog.fine("{0}ing {1}", (value?"Enabl":"Disabl"), this);
-        boolean repaintNeeded = (enabled != value);
-        enabled = value;
+    public void setEnabled(final boolean value) {
+        if (enableLog.isLoggable(PlatformLogger.FINE)) {
+            enableLog.fine("{0}ing {1}", (value ? "Enabl" : "Disabl"), this);
+        }
+        boolean status = value;
+        // If any of our heavyweight ancestors are disable, we should be too
+        // See 6176875 for more information
+        final Container cp = SunToolkit.getNativeContainer(target);
+        if (cp != null) {
+            status &= ((XComponentPeer) cp.getPeer()).isEnabled();
+        }
+        synchronized (getStateLock()) {
+            if (enabled == status) {
+                return;
+            }
+            enabled = status;
+        }
+
         if (target instanceof Container) {
-            Component list[] = ((Container)target).getComponents();
-            for (int i = 0; i < list.length; ++i) {
-                boolean childEnabled = list[i].isEnabled();
-                ComponentPeer p = list[i].getPeer();
-                if ( p != null ) {
-                    p.setEnabled(value && childEnabled);
+            final Component[] list = ((Container) target).getComponents();
+            for (final Component child : list) {
+                final ComponentPeer p = child.getPeer();
+                if (p != null) {
+                    p.setEnabled(status && child.isEnabled());
                 }
             }
         }
-        if (repaintNeeded) {
-            repaint();
-        }
+        repaint();
     }
 
     //
     // public so aw/Window can call it
     //
-    public boolean isEnabled() {
-        return enabled;
+    public final boolean isEnabled() {
+        synchronized (getStateLock()) {
+            return enabled;
+        }
     }
 
-
-
-    public void enable() {
-        setEnabled(true);
-    }
-
-    public void disable() {
-        setEnabled(false);
-    }
     @Override
     public void paint(final Graphics g) {
         super.paint(g);
--- a/src/solaris/classes/sun/awt/X11/XTextAreaPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/awt/X11/XTextAreaPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -168,6 +168,8 @@
 
     public void dispose() {
         XToolkit.specialPeerMap.remove(jtext);
+        // visible caret has a timer thread which must be stopped
+        jtext.getCaret().setVisible(false);
         jtext.removeNotify();
         textPane.removeNotify();
         super.dispose();
--- a/src/solaris/classes/sun/awt/X11/XTextFieldPeer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/awt/X11/XTextFieldPeer.java	Tue May 08 07:34:53 2012 -0700
@@ -104,6 +104,8 @@
 
     public void dispose() {
         XToolkit.specialPeerMap.remove(xtext);
+        // visible caret has a timer thread which must be stopped
+        xtext.getCaret().setVisible(false);
         xtext.removeNotify();
         super.dispose();
     }
--- a/src/solaris/classes/sun/java2d/xr/XRRenderer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/java2d/xr/XRRenderer.java	Tue May 08 07:34:53 2012 -0700
@@ -69,20 +69,26 @@
     }
 
     public void drawLine(SunGraphics2D sg2d, int x1, int y1, int x2, int y2) {
-        try {
-            SunToolkit.awtLock();
-
-            validateSurface(sg2d);
-            int transx = sg2d.transX;
-            int transy = sg2d.transY;
+        Region compClip = sg2d.getCompClip();
+        int transX1 = x1 + sg2d.transX;
+        int transY1 = y1 + sg2d.transY;
+        int transX2 = x2 + sg2d.transX;
+        int transY2 = y2 + sg2d.transY;
 
-            XRSurfaceData xrsd = (XRSurfaceData) sg2d.surfaceData;
+        // Non clipped fast path
+        if (compClip.contains(transX1, transY1)
+                && compClip.contains(transX2, transY2)) {
+            try {
+                SunToolkit.awtLock();
 
-            tileManager.addLine(x1 + transx, y1 + transy,
-                                x2 + transx, y2 + transy);
-            tileManager.fillMask(xrsd);
-        } finally {
-            SunToolkit.awtUnlock();
+                validateSurface(sg2d);
+                tileManager.addLine(transX1, transY1, transX2, transY2);
+                tileManager.fillMask((XRSurfaceData) sg2d.surfaceData);
+            } finally {
+                SunToolkit.awtUnlock();
+            }
+        } else {
+            draw(sg2d, new Line2D.Float(x1, y1, x2, y2));
         }
     }
 
--- a/src/solaris/classes/sun/nio/ch/SinkChannelImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/nio/ch/SinkChannelImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -84,7 +84,8 @@
 
     protected void implCloseSelectableChannel() throws IOException {
         synchronized (stateLock) {
-            nd.preClose(fd);
+            if (state != ST_KILLED)
+                nd.preClose(fd);
             long th = thread;
             if (th != 0)
                 NativeThread.signal(th);
--- a/src/solaris/classes/sun/nio/ch/SourceChannelImpl.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/nio/ch/SourceChannelImpl.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2012, Oracle and/or its affiliates. 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
@@ -84,7 +84,8 @@
 
     protected void implCloseSelectableChannel() throws IOException {
         synchronized (stateLock) {
-            nd.preClose(fd);
+            if (state != ST_KILLED)
+                nd.preClose(fd);
             long th = thread;
             if (th != 0)
                 NativeThread.signal(th);
--- a/src/solaris/classes/sun/nio/ch/sctp/AssociationChange.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/nio/ch/sctp/AssociationChange.java	Tue May 08 07:34:53 2012 -0700
@@ -26,10 +26,13 @@
 
 import com.sun.nio.sctp.Association;
 import com.sun.nio.sctp.AssociationChangeNotification;
+import javax.tools.annotation.GenerateNativeHeader;
 
 /**
  * An implementation of AssociationChangeNotification
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class AssociationChange extends AssociationChangeNotification
     implements SctpNotification
 {
--- a/src/solaris/classes/sun/nio/ch/sctp/PeerAddrChange.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/nio/ch/sctp/PeerAddrChange.java	Tue May 08 07:34:53 2012 -0700
@@ -27,10 +27,13 @@
 import java.net.SocketAddress;
 import com.sun.nio.sctp.Association;
 import com.sun.nio.sctp.PeerAddressChangeNotification;
+import javax.tools.annotation.GenerateNativeHeader;
 
 /**
  * An implementation of PeerAddressChangeNotification
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class PeerAddrChange extends PeerAddressChangeNotification
     implements SctpNotification
 {
--- a/src/solaris/classes/sun/nio/ch/sctp/ResultContainer.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/classes/sun/nio/ch/sctp/ResultContainer.java	Tue May 08 07:34:53 2012 -0700
@@ -24,10 +24,14 @@
  */
 package sun.nio.ch.sctp;
 
+import javax.tools.annotation.GenerateNativeHeader;
+
 /**
  * Wraps the actual message or notification so that it can be
  * set and returned from the native receive implementation.
  */
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
 public class ResultContainer {
     /* static final ints so that they can be referenced from native */
     static final int NOTHING = 0;
--- a/src/solaris/native/com/sun/management/MacosxOperatingSystem.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/native/com/sun/management/MacosxOperatingSystem.c	Tue May 08 07:34:53 2012 -0700
@@ -25,16 +25,136 @@
 
 #include "com_sun_management_UnixOperatingSystem.h"
 
+#include <sys/time.h>
+#include <mach/mach.h>
+#include <mach/task_info.h>
+
+
 JNIEXPORT jdouble JNICALL
 Java_com_sun_management_UnixOperatingSystem_getSystemCpuLoad
 (JNIEnv *env, jobject dummy)
 {
-  return -1.0; // not available
+    // This code is influenced by the darwin top source
+
+    kern_return_t kr;
+    mach_msg_type_number_t count;
+    host_cpu_load_info_data_t load;
+
+    static jlong last_used  = 0;
+    static jlong last_total = 0;
+
+    count = HOST_CPU_LOAD_INFO_COUNT;
+    kr = host_statistics(mach_host_self(), HOST_CPU_LOAD_INFO, (host_info_t)&load, &count);
+    if (kr != KERN_SUCCESS) {
+        return -1;
+    }
+
+    jlong used  = load.cpu_ticks[CPU_STATE_USER] + load.cpu_ticks[CPU_STATE_NICE] + load.cpu_ticks[CPU_STATE_SYSTEM];
+    jlong total = used + load.cpu_ticks[CPU_STATE_IDLE];
+
+    if (last_used == 0 || last_total == 0) {
+        // First call, just set the last values
+        last_used  = used;
+        last_total = total;
+        // return 0 since we have no data, not -1 which indicates error
+        return 0;
+    }
+
+    jlong used_delta  = used - last_used;
+    jlong total_delta = total - last_total;
+
+    jdouble cpu = (jdouble) used_delta / total_delta;
+
+    last_used  = used;
+    last_total = total;
+
+    return cpu;
 }
 
+
+#define TIME_VALUE_TO_TIMEVAL(a, r) do {  \
+     (r)->tv_sec = (a)->seconds;          \
+     (r)->tv_usec = (a)->microseconds;    \
+} while (0)
+
+
+#define TIME_VALUE_TO_MICROSECONDS(TV) \
+     ((TV).tv_sec * 1000 * 1000 + (TV).tv_usec)
+
+
 JNIEXPORT jdouble JNICALL
 Java_com_sun_management_UnixOperatingSystem_getProcessCpuLoad
 (JNIEnv *env, jobject dummy)
 {
-  return -1.0; // not available
-}
+    // This code is influenced by the darwin top source
+
+    struct task_basic_info_64 task_info_data;
+    struct task_thread_times_info thread_info_data;
+    struct timeval user_timeval, system_timeval, task_timeval;
+    struct timeval now;
+    mach_port_t task = mach_task_self();
+    kern_return_t kr;
+
+    static jlong last_task_time = 0;
+    static jlong last_time      = 0;
+
+    mach_msg_type_number_t thread_info_count = TASK_THREAD_TIMES_INFO_COUNT;
+    kr = task_info(task,
+            TASK_THREAD_TIMES_INFO,
+            (task_info_t)&thread_info_data,
+            &thread_info_count);
+    if (kr != KERN_SUCCESS) {
+        // Most likely cause: |task| is a zombie.
+        return -1;
+    }
+
+    mach_msg_type_number_t count = TASK_BASIC_INFO_64_COUNT;
+    kr = task_info(task,
+            TASK_BASIC_INFO_64,
+            (task_info_t)&task_info_data,
+            &count);
+    if (kr != KERN_SUCCESS) {
+        // Most likely cause: |task| is a zombie.
+        return -1;
+    }
+
+    /* Set total_time. */
+    // thread info contains live time...
+    TIME_VALUE_TO_TIMEVAL(&thread_info_data.user_time, &user_timeval);
+    TIME_VALUE_TO_TIMEVAL(&thread_info_data.system_time, &system_timeval);
+    timeradd(&user_timeval, &system_timeval, &task_timeval);
+
+    // ... task info contains terminated time.
+    TIME_VALUE_TO_TIMEVAL(&task_info_data.user_time, &user_timeval);
+    TIME_VALUE_TO_TIMEVAL(&task_info_data.system_time, &system_timeval);
+    timeradd(&user_timeval, &task_timeval, &task_timeval);
+    timeradd(&system_timeval, &task_timeval, &task_timeval);
+
+    if (gettimeofday(&now, NULL) < 0) {
+       return -1;
+    }
+    jint ncpus      = JVM_ActiveProcessorCount();
+    jlong time      = TIME_VALUE_TO_MICROSECONDS(now) * ncpus;
+    jlong task_time = TIME_VALUE_TO_MICROSECONDS(task_timeval);
+
+    if ((last_task_time == 0) || (last_time == 0)) {
+        // First call, just set the last values.
+        last_task_time = task_time;
+        last_time      = time;
+        // return 0 since we have no data, not -1 which indicates error
+        return 0;
+    }
+
+    jlong task_time_delta = task_time - last_task_time;
+    jlong time_delta      = time - last_time;
+    if (time_delta == 0) {
+        return -1;
+    }
+
+    jdouble cpu = (jdouble) task_time_delta / time_delta;
+
+    last_task_time = task_time;
+    last_time      = time;
+
+    return cpu;
+ }
--- a/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c	Tue May 08 07:34:53 2012 -0700
@@ -34,6 +34,13 @@
 #include <sys/stat.h>
 #if defined(_ALLBSD_SOURCE)
 #include <sys/sysctl.h>
+#ifdef __APPLE__
+#include <sys/param.h>
+#include <sys/mount.h>
+#include <mach/mach.h>
+#include <sys/proc_info.h>
+#include <libproc.h>
+#endif
 #else
 #include <sys/swap.h>
 #endif
@@ -150,6 +157,13 @@
     avail = (jlong)si.freeswap * si.mem_unit;
 
     return available ? avail : total;
+#elif defined(__APPLE__)
+    struct xsw_usage vmusage;
+    size_t size = sizeof(vmusage);
+    if (sysctlbyname("vm.swapusage", &vmusage, &size, NULL, 0) != 0) {
+        throw_internal_error(env, "sysctlbyname failed");
+    }
+    return available ? (jlong)vmusage.xsu_avail : (jlong)vmusage.xsu_total;
 #else /* _ALLBSD_SOURCE */
     /*
      * XXXBSD: there's no way available to get swap info in
@@ -216,6 +230,15 @@
 
     fclose(fp);
     return (jlong)vsize;
+#elif defined(__APPLE__)
+    struct task_basic_info t_info;
+    mach_msg_type_number_t t_info_count = TASK_BASIC_INFO_COUNT;
+
+    kern_return_t res = task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&t_info, &t_info_count);
+    if (res != KERN_SUCCESS) {
+        throw_internal_error(env, "task_info failed");
+    }
+    return t_info.virtual_size;
 #else /* _ALLBSD_SOURCE */
     /*
      * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
@@ -243,6 +266,17 @@
 Java_com_sun_management_UnixOperatingSystem_getProcessCpuTime
   (JNIEnv *env, jobject mbean)
 {
+#ifdef __APPLE__
+    struct rusage usage;
+    if (getrusage(RUSAGE_SELF, &usage) != 0) {
+        throw_internal_error(env, "getrusage failed");
+        return -1;
+    }
+    jlong microsecs =
+        usage.ru_utime.tv_sec * 1000 * 1000 + usage.ru_utime.tv_usec +
+        usage.ru_stime.tv_sec * 1000 * 1000 + usage.ru_stime.tv_usec;
+    return microsecs * 1000;
+#else
     jlong clk_tck, ns_per_clock_tick;
     jlong cpu_time_ns;
     struct tms time;
@@ -267,19 +301,32 @@
     cpu_time_ns = ((jlong)time.tms_utime + (jlong) time.tms_stime) *
                       ns_per_clock_tick;
     return cpu_time_ns;
+#endif
 }
 
 JNIEXPORT jlong JNICALL
 Java_com_sun_management_UnixOperatingSystem_getFreePhysicalMemorySize
   (JNIEnv *env, jobject mbean)
 {
-#ifdef _ALLBSD_SOURCE
+#ifdef __APPLE__
+    mach_msg_type_number_t count;
+    vm_statistics_data_t vm_stats;
+    kern_return_t res;
+
+    count = HOST_VM_INFO_COUNT;
+    res = host_statistics(mach_host_self(), HOST_VM_INFO, (host_info_t)&vm_stats, &count);
+    if (res != KERN_SUCCESS) {
+        throw_internal_error(env, "host_statistics failed");
+        return -1;
+    }
+    return (jlong)vm_stats.free_count * page_size;
+#elif defined(_ALLBSD_SOURCE)
     /*
      * XXBSDL no way to do it in FreeBSD
      */
     // throw_internal_error(env, "unimplemented in FreeBSD")
     return (128 * MB);
-#else
+#else // solaris / linux
     jlong num_avail_physical_pages = sysconf(_SC_AVPHYS_PAGES);
     return (num_avail_physical_pages * page_size);
 #endif
@@ -290,28 +337,75 @@
   (JNIEnv *env, jobject mbean)
 {
 #ifdef _ALLBSD_SOURCE
-    jlong result;
+    jlong result = 0;
     int mib[2];
     size_t rlen;
 
     mib[0] = CTL_HW;
-    mib[1] = HW_PHYSMEM;
+    mib[1] = HW_MEMSIZE;
     rlen = sizeof(result);
-    if (sysctl(mib, 2, &result, &rlen, NULL, 0) == -1)
-        result = 256 * MB;
-
-    return (result);
-#else
+    if (sysctl(mib, 2, &result, &rlen, NULL, 0) != 0) {
+        throw_internal_error(env, "sysctl failed");
+        return -1;
+    }
+    return result;
+#else // solaris / linux
     jlong num_physical_pages = sysconf(_SC_PHYS_PAGES);
     return (num_physical_pages * page_size);
 #endif
 }
 
+
+
 JNIEXPORT jlong JNICALL
 Java_com_sun_management_UnixOperatingSystem_getOpenFileDescriptorCount
   (JNIEnv *env, jobject mbean)
 {
-#ifdef _ALLBSD_SOURCE
+#ifdef __APPLE__
+    // This code is influenced by the darwin lsof source
+    pid_t my_pid;
+    struct proc_bsdinfo bsdinfo;
+    struct proc_fdinfo *fds;
+    int nfiles;
+    kern_return_t kres;
+    int res;
+    size_t fds_size;
+
+    kres = pid_for_task(mach_task_self(), &my_pid);
+    if (res != KERN_SUCCESS) {
+        throw_internal_error(env, "pid_for_task failed");
+        return -1;
+    }
+
+    // get the maximum number of file descriptors
+    res = proc_pidinfo(my_pid, PROC_PIDTBSDINFO, 0, &bsdinfo, PROC_PIDTBSDINFO_SIZE);
+    if (res <= 0) {
+        throw_internal_error(env, "proc_pidinfo with PROC_PIDTBSDINFO failed");
+        return -1;
+    }
+
+    // allocate memory to hold the fd information (we don't acutally use this information
+    // but need it to get the number of open files)
+    fds_size = bsdinfo.pbi_nfiles * sizeof(struct proc_fdinfo);
+    fds = malloc(fds_size);
+    if (fds == NULL) {
+        JNU_ThrowOutOfMemoryError(env, "could not allocate space for file descriptors");
+        return -1;
+    }
+
+    // get the list of open files - the return value is the number of bytes
+    // proc_pidinfo filled in
+    res = proc_pidinfo(my_pid, PROC_PIDLISTFDS, 0, fds, fds_size);
+    if (res <= 0) {
+        free(fds);
+        throw_internal_error(env, "proc_pidinfo failed for PROC_PIDLISTFDS");
+        return -1;
+    }
+    nfiles = res / sizeof(struct proc_fdinfo);
+    free(fds);
+
+    return nfiles;
+#elif defined(_ALLBSD_SOURCE)
     /*
      * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
      */
--- a/src/solaris/native/sun/awt/fontpath.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/native/sun/awt/fontpath.c	Tue May 08 07:34:53 2012 -0700
@@ -583,9 +583,6 @@
 }
 
 #include <dlfcn.h>
-#if !(defined(__linux__) || defined(MACOSX))
-#include <link.h>
-#endif
 
 #include "fontconfig.h"
 
--- a/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h	Tue May 08 07:34:53 2012 -0700
@@ -28,7 +28,7 @@
 
 #include <stdlib.h>
 #ifndef MACOSX
-#include <link.h>
+#include <dlfcn.h>
 #endif
 #include "jvm_md.h"
 #include "J2D_GL/glx.h"
--- a/src/solaris/native/sun/java2d/x11/XRBackendNative.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/native/sun/java2d/x11/XRBackendNative.c	Tue May 08 07:34:53 2012 -0700
@@ -70,7 +70,6 @@
 
 #ifdef __solaris__
 /* Solaris 10 will not have these symbols at runtime */
-#include <link.h>
 
 typedef Picture (*XRenderCreateLinearGradientFuncType)
                                      (Display *dpy,
--- a/src/solaris/transport/socket/socket_md.c	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/solaris/transport/socket/socket_md.c	Tue May 08 07:34:53 2012 -0700
@@ -35,8 +35,7 @@
 #include <sys/time.h>
 #ifdef __solaris__
 #include <thread.h>
-#endif
-#if defined(__linux__) || defined(_ALLBSD_SOURCE)
+#else
 #include <pthread.h>
 #include <sys/poll.h>
 #endif
@@ -306,9 +305,7 @@
     return r;
 }
 
-#endif
-
-#if defined(__linux__) || defined(_ALLBSD_SOURCE)
+#else
 int
 dbgsysTlsAlloc() {
     pthread_key_t key;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/windows/classes/com/sun/tools/jdi/SharedMemoryConnection.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,143 @@
+/*
+ * Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.tools.jdi;
+
+import com.sun.jdi.*;
+import com.sun.jdi.connect.*;
+import com.sun.jdi.connect.spi.*;
+
+import java.io.IOException;
+
+class SharedMemoryConnection extends Connection {
+    private long id;
+    private Object receiveLock = new Object();
+    private Object sendLock = new Object();
+    private Object closeLock = new Object();
+    private boolean closed = false;
+
+    private native byte receiveByte0(long id) throws IOException;
+    private native void sendByte0(long id, byte b) throws IOException;
+    private native void close0(long id);
+    private native byte[] receivePacket0(long id)throws IOException;
+    private native void sendPacket0(long id, byte b[]) throws IOException;
+
+    // handshake with the target VM
+    void handshake(long handshakeTimeout) throws IOException {
+        byte[] hello = "JDWP-Handshake".getBytes("UTF-8");
+
+        for (int i=0; i<hello.length; i++) {
+            sendByte0(id, hello[i]);
+        }
+        for (int i=0; i<hello.length; i++) {
+            byte b = receiveByte0(id);
+            if (b != hello[i]) {
+                throw new IOException("handshake failed - unrecognized message from target VM");
+            }
+        }
+    }
+
+
+    SharedMemoryConnection(long id) throws IOException {
+        this.id = id;
+    }
+
+    public void close() {
+        synchronized (closeLock) {
+            if (!closed) {
+                close0(id);
+                closed = true;
+            }
+        }
+    }
+
+    public boolean isOpen() {
+        synchronized (closeLock) {
+            return !closed;
+        }
+    }
+
+    public byte[] readPacket() throws IOException {
+        if (!isOpen()) {
+            throw new ClosedConnectionException("Connection closed");
+        }
+        byte b[];
+        try {
+            // only one thread may be reading at a time
+            synchronized (receiveLock) {
+                b  = receivePacket0(id);
+            }
+        } catch (IOException ioe) {
+            if (!isOpen()) {
+                throw new ClosedConnectionException("Connection closed");
+            } else {
+                throw ioe;
+            }
+        }
+        return b;
+    }
+
+    public void writePacket(byte b[]) throws IOException {
+        if (!isOpen()) {
+            throw new ClosedConnectionException("Connection closed");
+        }
+
+        /*
+         * Check the packet size
+         */
+        if (b.length < 11) {
+            throw new IllegalArgumentException("packet is insufficient size");
+        }
+        int b0 = b[0] & 0xff;
+        int b1 = b[1] & 0xff;
+        int b2 = b[2] & 0xff;
+        int b3 = b[3] & 0xff;
+        int len = ((b0 << 24) | (b1 << 16) | (b2 << 8) | (b3 << 0));
+        if (len < 11) {
+            throw new IllegalArgumentException("packet is insufficient size");
+        }
+
+        /*
+         * Check that the byte array contains the complete packet
+         */
+        if (len > b.length) {
+            throw new IllegalArgumentException("length mis-match");
+        }
+
+        try {
+            // only one thread may be writing at a time
+            synchronized(sendLock) {
+                sendPacket0(id, b);
+            }
+        } catch (IOException ioe) {
+            if (!isOpen()) {
+               throw new ClosedConnectionException("Connection closed");
+            } else {
+               throw ioe;
+            }
+        }
+    }
+}
+
--- a/src/windows/classes/com/sun/tools/jdi/SharedMemoryTransportService.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/src/windows/classes/com/sun/tools/jdi/SharedMemoryTransportService.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2012, Oracle and/or its affiliates. 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
@@ -168,116 +168,6 @@
     }
 }
 
-class SharedMemoryConnection extends Connection {
-    private long id;
-    private Object receiveLock = new Object();
-    private Object sendLock = new Object();
-    private Object closeLock = new Object();
-    private boolean closed = false;
-
-    private native byte receiveByte0(long id) throws IOException;
-    private native void sendByte0(long id, byte b) throws IOException;
-    private native void close0(long id);
-    private native byte[] receivePacket0(long id)throws IOException;
-    private native void sendPacket0(long id, byte b[]) throws IOException;
-
-    // handshake with the target VM
-    void handshake(long handshakeTimeout) throws IOException {
-        byte[] hello = "JDWP-Handshake".getBytes("UTF-8");
-
-        for (int i=0; i<hello.length; i++) {
-            sendByte0(id, hello[i]);
-        }
-        for (int i=0; i<hello.length; i++) {
-            byte b = receiveByte0(id);
-            if (b != hello[i]) {
-                throw new IOException("handshake failed - unrecognized message from target VM");
-            }
-        }
-    }
-
-
-    SharedMemoryConnection(long id) throws IOException {
-        this.id = id;
-    }
-
-    public void close() {
-        synchronized (closeLock) {
-            if (!closed) {
-                close0(id);
-                closed = true;
-            }
-        }
-    }
-
-    public boolean isOpen() {
-        synchronized (closeLock) {
-            return !closed;
-        }
-    }
-
-    public byte[] readPacket() throws IOException {
-        if (!isOpen()) {
-            throw new ClosedConnectionException("Connection closed");
-        }
-        byte b[];
-        try {
-            // only one thread may be reading at a time
-            synchronized (receiveLock) {
-                b  = receivePacket0(id);
-            }
-        } catch (IOException ioe) {
-            if (!isOpen()) {
-                throw new ClosedConnectionException("Connection closed");
-            } else {
-                throw ioe;
-            }
-        }
-        return b;
-    }
-
-    public void writePacket(byte b[]) throws IOException {
-        if (!isOpen()) {
-            throw new ClosedConnectionException("Connection closed");
-        }
-
-        /*
-         * Check the packet size
-         */
-        if (b.length < 11) {
-            throw new IllegalArgumentException("packet is insufficient size");
-        }
-        int b0 = b[0] & 0xff;
-        int b1 = b[1] & 0xff;
-        int b2 = b[2] & 0xff;
-        int b3 = b[3] & 0xff;
-        int len = ((b0 << 24) | (b1 << 16) | (b2 << 8) | (b3 << 0));
-        if (len < 11) {
-            throw new IllegalArgumentException("packet is insufficient size");
-        }
-
-        /*
-         * Check that the byte array contains the complete packet
-         */
-        if (len > b.length) {
-            throw new IllegalArgumentException("length mis-match");
-        }
-
-        try {
-            // only one thread may be writing at a time
-            synchronized(sendLock) {
-                sendPacket0(id, b);
-            }
-        } catch (IOException ioe) {
-            if (!isOpen()) {
-               throw new ClosedConnectionException("Connection closed");
-            } else {
-               throw ioe;
-            }
-        }
-    }
-}
-
 
 class SharedMemoryTransportServiceCapabilities extends TransportService.Capabilities {
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/windows/classes/java/lang/ClassLoaderHelper.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package java.lang;
+
+import java.io.File;
+
+class ClassLoaderHelper {
+
+    private ClassLoaderHelper() {}
+
+    /**
+     * Returns an alternate path name for the given file
+     * such that if the original pathname did not exist, then the
+     * file may be located at the alternate location.
+     * For most platforms, this behavior is not supported and returns null.
+     */
+    static File mapAlternativeName(File lib) {
+        return null;
+    }
+}
--- a/test/ProblemList.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/ProblemList.txt	Tue May 08 07:34:53 2012 -0700
@@ -161,6 +161,26 @@
 # Need to be marked othervm, or changed to be samevm safe
 com/sun/jndi/rmi/registry/RegistryContext/UnbindIdempotent.java generic-all
 
+# 7162111
+demo/jvmti/mtrace/TraceJFrame.java                              macosx-all
+javax/script/CauseExceptionTest.java                            macosx-all
+javax/script/GetInterfaceTest.java                              macosx-all
+javax/script/JavaScriptScopeTest.java                           macosx-all
+javax/script/NullUndefinedVarTest.java                          macosx-all
+javax/script/PluggableContextTest.java                          macosx-all
+javax/script/ProviderTest.sh                                    macosx-all
+javax/script/RhinoExceptionTest.java                            macosx-all
+javax/script/StringWriterPrintTest.java                         macosx-all
+javax/script/Test1.java                                         macosx-all
+javax/script/Test2.java                                         macosx-all
+javax/script/Test3.java                                         macosx-all
+javax/script/Test4.java                                         macosx-all
+javax/script/Test5.java                                         macosx-all
+javax/script/Test6.java                                         macosx-all
+javax/script/Test7.java                                         macosx-all
+javax/script/Test8.java                                         macosx-all
+javax/script/UnescapedBracketRegExTest.java                     macosx-all
+javax/script/VersionTest.java                                   macosx-all
 ############################################################################
 
 # jdk_net
@@ -202,6 +222,8 @@
 sun/net/www/protocol/http/B6299712.java                         macosx-all
 java/net/CookieHandler/CookieManagerTest.java                   macosx-all
 
+# JPRT needs to set 127.0.0.1 in proxy bypass list
+java/net/URLClassLoader/closetest/CloseTest.java                macosx-all
 ############################################################################
 
 # jdk_io
@@ -252,6 +274,9 @@
 # 7132247
 java/rmi/registry/readTest/readTest.sh				windows-all
 
+# 7142596
+java/rmi/transport/pinClientSocketFactory/PinClientSocketFactory.java generic-all
+
 ############################################################################
 
 # jdk_security
--- a/test/com/sun/management/OperatingSystemMXBean/TestTotalSwap.sh	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/com/sun/management/OperatingSystemMXBean/TestTotalSwap.sh	Tue May 08 07:34:53 2012 -0700
@@ -83,6 +83,13 @@
        total_swap=`free -b | grep -i swap | awk '{print $2}'`
        runOne GetTotalSwapSpaceSize $total_swap 
        ;;
+     Darwin )
+       # $ sysctl -n vm.swapusage 
+       # total = 8192.00M  used = 7471.11M  free = 720.89M  (encrypted)
+       swap=`/usr/sbin/sysctl -n vm.swapusage | awk '{ print $3 }' | awk -F . '{ print $1 }'` || exit 2
+       total_swap=`expr $swap \* 1024 \* 1024` || exit 2
+       runOne GetTotalSwapSpaceSize $total_swap
+       ;;
     * )
        runOne GetTotalSwapSpaceSize "sanity-only"
        ;;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/demo/zipfs/ZFSTests.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7156873
+   @summary ZipFileSystem regression tests
+ */
+
+
+import java.net.URI;
+import java.nio.file.*;
+import java.util.Map;
+import java.util.HashMap;
+
+public class ZFSTests {
+
+    public static void main(String[] args) throws Throwable {
+        test7156873();
+    }
+
+    static void test7156873() throws Throwable {
+        String DIRWITHSPACE = "testdir with spaces";
+        Path dir = Paths.get(DIRWITHSPACE);
+        Path path = Paths.get(DIRWITHSPACE, "file.zip");
+        try {
+            Files.createDirectory(dir);
+            URI uri = URI.create("jar:" + path.toUri());
+            Map<String, Object> env = new HashMap<String, Object>();
+            env.put("create", "true");
+            try (FileSystem fs = FileSystems.newFileSystem(uri, env)) {}
+        } finally {
+            Files.deleteIfExists(path);
+            Files.deleteIfExists(dir);
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/Component/7097771/bug7097771.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import sun.awt.SunToolkit;
+import test.java.awt.regtesthelpers.Util;
+
+import java.awt.AWTException;
+import java.awt.Button;
+import java.awt.Frame;
+import java.awt.Robot;
+import java.awt.Toolkit;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+/*
+  @test
+  @bug 7097771
+  @summary setEnabled does not work for components in disabled containers.
+  @author sergey.bylokhov@oracle.com: area=awt.component
+  @library ../../regtesthelpers
+  @build Util
+  @run main bug7097771
+*/
+public final class bug7097771 extends Frame implements ActionListener {
+
+    private static volatile boolean action;
+
+    public static void main(final String[] args) throws AWTException {
+        final bug7097771 frame = new bug7097771();
+        frame.setSize(300, 300);
+        frame.setLocationRelativeTo(null);
+        final Button button = new Button();
+        button.addActionListener(frame);
+        frame.add(button);
+        frame.setVisible(true);
+        sleep();
+        frame.setEnabled(false);
+        button.setEnabled(false);
+        button.setEnabled(true);
+        sleep();
+        Util.clickOnComp(button, new Robot());
+        sleep();
+        frame.dispose();
+        if (action) {
+            throw new RuntimeException("Button is not disabled.");
+        }
+    }
+
+    @Override
+    public void actionPerformed(final ActionEvent e) {
+        action = true;
+    }
+
+    private static void sleep() {
+        ((SunToolkit) Toolkit.getDefaultToolkit()).realSync();
+        try {
+            Thread.sleep(1000);
+        } catch (InterruptedException ignored) {
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,121 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+  @test
+  @bug 7154177
+  @summary An invisible owner frame should never become visible
+  @author anthony.petrov@oracle.com: area=awt.toplevel
+  @library ../../regtesthelpers
+  @build Util
+  @run main InvisibleOwner
+*/
+
+import java.awt.*;
+import java.awt.event.*;
+import java.util.*;
+import test.java.awt.regtesthelpers.Util;
+
+public class InvisibleOwner {
+    private static volatile boolean invisibleOwnerClicked = false;
+    private static volatile boolean backgroundClicked = false;
+
+    private static final int F_X = 40, F_Y = 40, F_W = 200, F_H = 200;
+
+    public static void main(String[] args) throws AWTException {
+        // A background frame to compare a pixel color against
+        Frame helperFrame = new Frame("Background frame");
+        helperFrame.setBackground(Color.BLUE);
+        helperFrame.setBounds(F_X - 10, F_Y - 10, F_W + 20, F_H + 20);
+        helperFrame.addMouseListener(new MouseAdapter() {
+            @Override
+            public void mouseClicked(MouseEvent ev) {
+                backgroundClicked= true;
+            }
+        });
+        helperFrame.setVisible(true);
+
+        // An owner frame that should stay invisible
+        Frame frame = new Frame("Invisible Frame");
+        frame.setBackground(Color.GREEN);
+        frame.setLocation(F_X, F_Y);
+        frame.setSize(F_W, F_H);
+        frame.addMouseListener(new MouseAdapter() {
+            @Override
+            public void mouseClicked(MouseEvent ev) {
+                invisibleOwnerClicked = true;
+            }
+        });
+
+        // An owned window
+        final Window window = new Window(frame);
+        window.setBackground(Color.RED);
+        window.setSize(200, 200);
+        window.setLocation(300, 300);
+        window.setVisible(true);
+        try { Thread.sleep(1000); } catch (Exception ex) {}
+
+        Robot robot = new Robot();
+
+        // Clicking the owned window shouldn't make its owner visible
+        Util.clickOnComp(window, robot);
+        try { Thread.sleep(500); } catch (Exception ex) {}
+
+
+        // Assume the location and size are applied to the frame as expected.
+        // This should work fine on the Mac. We can't call getLocationOnScreen()
+        // since from Java perspective the frame is invisible anyway.
+
+        // 1. Check the color at the center of the owner frame
+        Color c = robot.getPixelColor(F_X + F_W / 2, F_Y + F_H / 2);
+        System.err.println("Pixel color: " + c);
+        if (c == null) {
+            throw new RuntimeException("Robot.getPixelColor() failed");
+        }
+        if (c.equals(frame.getBackground())) {
+            throw new RuntimeException("The invisible frame has become visible");
+        }
+        if (!c.equals(helperFrame.getBackground())) {
+            throw new RuntimeException("The background helper frame has been covered by something unexpected");
+        }
+
+        // 2. Try to click it
+        robot.mouseMove(F_X + F_W / 2, F_Y + F_H / 2);
+        robot.mousePress(InputEvent.BUTTON1_MASK);
+        robot.mouseRelease(InputEvent.BUTTON1_MASK);
+        try { Thread.sleep(500); } catch (Exception ex) {}
+
+        // Cleanup
+        window.dispose();
+        frame.dispose();
+        helperFrame.dispose();
+
+        // Final checks
+        if (invisibleOwnerClicked) {
+            throw new RuntimeException("An invisible owner frame got clicked. Looks like it became visible.");
+        }
+        if (!backgroundClicked) {
+            throw new RuntimeException("The background helper frame hasn't been clciked");
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/TextArea/DisposeTest/TestDispose.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,101 @@
+/*
+ * Copyright (c) 2012 Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * Portions Copyright (c) 2012 IBM Corporation
+ */
+
+/* @test
+ * @bug 7155298
+ * @run main/othervm/timeout=60 TestDispose
+ * @summary Editable TextArea blocks GUI application from exit.
+ * @author Sean Chou
+ */
+
+import java.awt.FlowLayout;
+import java.awt.Frame;
+import java.awt.TextArea;
+import java.awt.Toolkit;
+import java.lang.reflect.InvocationTargetException;
+
+import javax.swing.JFrame;
+import javax.swing.SwingUtilities;
+
+import sun.awt.SunToolkit;
+
+public class TestDispose {
+
+    public static Frame frame = null;
+    public static TextArea textArea = null;
+    public static volatile Process worker = null;
+
+    public void testDispose() throws InvocationTargetException,
+            InterruptedException {
+        SunToolkit toolkit = (SunToolkit) Toolkit.getDefaultToolkit();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                frame = new JFrame("Test");
+
+                textArea = new TextArea("editable textArea");
+                textArea.setEditable(true);
+                // textArea.setEditable(false); // this testcase passes if textArea is non-editable
+
+                frame.setLayout(new FlowLayout());
+                frame.add(textArea);
+
+                frame.pack();
+                frame.setVisible(true);
+            }
+        });
+        toolkit.realSync();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                frame.dispose();
+            }
+        });
+        toolkit.realSync();
+    }
+
+    public static void main(String[] args) throws Exception{
+        if(args.length == 0) {
+            Runtime.getRuntime().addShutdownHook(new Thread(){
+                public void run() {
+                    worker.destroy();
+                }
+            });
+
+            System.out.println(System.getProperty("java.home")+"/bin/java TestDispose workprocess");
+            worker = Runtime.getRuntime().exec(System.getProperty("java.home")+"/bin/java TestDispose workprocess");
+            worker.waitFor();
+            return;
+        }
+
+        TestDispose app = new TestDispose();
+        app.testDispose();
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/TextField/DisposeTest/TestDispose.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,102 @@
+/*
+ * Copyright (c) 2012 Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * Portions Copyright (c) 2012 IBM Corporation
+ */
+
+/* @test
+ * @bug 7155298
+ * @run main/othervm/timeout=60 TestDispose
+ * @summary Editable TextField blocks GUI application from exit.
+ * @author Sean Chou
+ */
+
+import java.awt.FlowLayout;
+import java.awt.Frame;
+import java.awt.TextField;
+import java.awt.Toolkit;
+import java.lang.reflect.InvocationTargetException;
+
+import javax.swing.JFrame;
+import javax.swing.SwingUtilities;
+
+import sun.awt.SunToolkit;
+
+public class TestDispose {
+
+    public static Frame frame = null;
+    public static TextField textField = null;
+    public static volatile Process worker = null;
+
+    public void testDispose() throws InvocationTargetException,
+            InterruptedException {
+        SunToolkit toolkit = (SunToolkit) Toolkit.getDefaultToolkit();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                frame = new JFrame("Test");
+
+                textField = new TextField("editable textArea");
+                textField.setEditable(true);
+                // textField.setEditable(false); // this testcase passes if textField is non-editable
+
+                frame.setLayout(new FlowLayout());
+                frame.add(textField);
+
+                frame.pack();
+                frame.setVisible(true);
+            }
+        });
+        toolkit.realSync();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                frame.dispose();
+            }
+        });
+        toolkit.realSync();
+
+    }
+
+    public static void main(String[] args) throws Exception{
+        if(args.length == 0) {
+            Runtime.getRuntime().addShutdownHook(new Thread(){
+                public void run() {
+                    worker.destroy();
+                }
+            });
+
+            System.out.println(System.getProperty("java.home")+"/bin/java TestDispose workprocess");
+            worker = Runtime.getRuntime().exec(System.getProperty("java.home")+"/bin/java TestDispose workprocess");
+            worker.waitFor();
+            return;
+        }
+
+        TestDispose app = new TestDispose();
+        app.testDispose();
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/Toolkit/Headless/WrappedToolkitTest/TestWrapped.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * test
+ * @bug 6282388
+ * @summary Tests that AWT use correct toolkit to be wrapped into HeadlessToolkit
+ * @author artem.ananiev@sun.com: area=awt.headless
+ * @run shell WrappedToolkitTest.sh
+ */
+
+import java.awt.*;
+
+import java.lang.reflect.*;
+
+import sun.awt.*;
+
+public class TestWrapped
+{
+    public static void main(String[] args)
+    {
+        try
+        {
+        if (args.length != 1) {
+            System.err.println("No correct toolkit class name is specified, test is not run");
+            System.exit(0);
+        }
+
+        String correctToolkitClassName = args[0];
+        Toolkit tk = Toolkit.getDefaultToolkit();
+        Class tkClass = tk.getClass();
+        if (!tkClass.getName().equals("sun.awt.HeadlessToolkit"))
+        {
+            System.err.println(tkClass.getName());
+            System.err.println("Error: default toolkit is not an instance of HeadlessToolkit");
+            System.exit(-1);
+        }
+
+        Field f = tkClass.getDeclaredField("tk");
+        f.setAccessible(true);
+        Class wrappedClass = f.get(tk).getClass();
+        if (!wrappedClass.getName().equals(correctToolkitClassName)) {
+            System.err.println(wrappedClass.getName());
+            System.err.println("Error: wrapped toolkit is not an instance of " + correctToolkitClassName);
+            System.exit(-1);
+        }
+        }
+        catch (Exception z)
+        {
+            z.printStackTrace(System.err);
+            System.exit(-1);
+        }
+
+        System.exit(0);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,179 @@
+#!/bin/ksh -p
+
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.
+#
+# 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+#   @test
+#   @bug 6282388
+#   @summary Tests that AWT use correct toolkit to be wrapped into HeadlessToolkit
+#   @author artem.ananiev@sun.com: area=awt.headless
+#   @compile TestWrapped.java
+#   @run shell WrappedToolkitTest.sh
+
+# Beginning of subroutines:
+status=1
+
+#Call this from anywhere to fail the test with an error message
+# usage: fail "reason why the test failed"
+fail() 
+ { echo "The test failed :-("
+   echo "$*" 1>&2
+   echo "exit status was $status"
+   exit $status
+ } #end of fail()
+
+#Call this from anywhere to pass the test with a message
+# usage: pass "reason why the test passed if applicable"
+pass() 
+ { echo "The test passed!!!"
+   echo "$*" 1>&2
+   exit 0
+ } #end of pass()
+
+# end of subroutines
+
+
+# The beginning of the script proper
+
+# Checking for proper OS
+OS=`uname -s`
+case "$OS" in
+   SunOS )
+      VAR="One value for Sun"
+      DEFAULT_JDK=/usr/local/java/jdk1.2/solaris
+      FILESEP="/"
+      ;;
+
+   Linux )
+      VAR="A different value for Linux"
+      DEFAULT_JDK=/usr/local/java/jdk1.4/linux-i386
+      FILESEP="/"
+      ;;
+
+   Windows* | CYGWIN* )
+      VAR="A different value for Win32"
+      DEFAULT_JDK=/usr/local/java/jdk1.2/win32
+      FILESEP="\\"
+      ;;
+
+   # catch all other OSs
+   * )
+      echo "Unrecognized system!  $OS"
+      fail "Unrecognized system!  $OS"
+      ;;
+esac
+
+# check that some executable or other file you need is available, abort if not
+#  note that the name of the executable is in the fail string as well.
+# this is how to check for presence of the compiler, etc.
+#RESOURCE=`whence SomeProgramOrFileNeeded`
+#if [ "${RESOURCE}" = "" ] ; 
+#   then fail "Need SomeProgramOrFileNeeded to perform the test" ; 
+#fi
+
+# Want this test to run standalone as well as in the harness, so do the 
+#  following to copy the test's directory into the harness's scratch directory 
+#  and set all appropriate variables:
+
+if [ -z "${TESTJAVA}" ] ; then
+   # TESTJAVA is not set, so the test is running stand-alone.
+   # TESTJAVA holds the path to the root directory of the build of the JDK
+   # to be tested.  That is, any java files run explicitly in this shell
+   # should use TESTJAVA in the path to the java interpreter.
+   # So, we'll set this to the JDK spec'd on the command line.  If none
+   # is given on the command line, tell the user that and use a cheesy
+   # default.
+   # THIS IS THE JDK BEING TESTED.
+   if [ -n "$1" ] ;
+      then TESTJAVA=$1
+      else echo "no JDK specified on command line so using default!"
+     TESTJAVA=$DEFAULT_JDK
+   fi
+   TESTSRC=.
+   TESTCLASSES=.
+   STANDALONE=1;
+fi
+echo "JDK under test is: $TESTJAVA"
+
+#Deal with .class files:
+if [ -n "${STANDALONE}" ] ; then
+   # then compile all .java files (if there are any) into .class files
+   if [ -a *.java ]; then
+      ${TESTJAVA}/bin/javac$ ./*.java ;
+   fi
+   # else in harness so copy all the class files from where jtreg put them
+   # over to the scratch directory this test is running in. 
+   else cp ${TESTCLASSES}/*.class . ;
+fi
+
+#if in test harness, then copy the entire directory that the test is in over 
+# to the scratch directory.  This catches any support files needed by the test.
+if [ -z "${STANDALONE}" ] ; 
+   then cp ${TESTSRC}/* . 
+fi
+
+#Just before executing anything, make sure it has executable permission!
+chmod 777 ./*
+
+###############  YOUR TEST CODE HERE!!!!!!!  #############
+
+case "$OS" in
+  Windows* | CYGWIN* )
+    ${TESTJAVA}/bin/java -Djava.awt.headless=true \
+                         TestWrapped sun.awt.windows.WToolkit
+    status=$?
+    if [ ! $status -eq "0" ]; then
+      fail "Test FAILED: toolkit wrapped into HeadlessToolkit is not an instance of sun.awt.windows.WToolkit";
+    fi
+    ${TESTJAVA}/bin/java -Djava.awt.headless=true \
+                         -Dawt.toolkit=sun.awt.windows.WToolkit \
+                         TestWrapped sun.awt.windows.WToolkit
+    status=$?
+    if [ ! $status -eq "0" ]; then
+      fail "Test FAILED: toolkit wrapped into HeadlessToolkit is not an instance of sun.awt.windows.WToolkit";
+    fi
+    ;;
+
+  SunOS | Linux )
+    ${TESTJAVA}/bin/java -Djava.awt.headless=true \
+                         -Dawt.toolkit=sun.awt.X11.XToolkit \
+                         TestWrapped sun.awt.X11.XToolkit
+    status=$?
+    if [ ! $status -eq "0" ]; then
+      fail "Test FAILED: toolkit wrapped into HeadlessToolkit is not an instance of sun.awt.xawt.XToolkit";
+    fi
+    AWT_TOOLKIT=XToolkit ${TESTJAVA}/bin/java -Djava.awt.headless=true \
+                                              TestWrapped sun.awt.X11.XToolkit
+    status=$?
+    if [ ! $status -eq "0" ]; then
+      fail "Test FAILED: toolkit wrapped into HeadlessToolkit is not an instance of sun.awt.xawt.XToolkit";
+    fi
+    ;;
+
+esac
+
+pass "All the tests are PASSED";
+
+#For additional examples of how to write platform independent KSH scripts,
+# see the jtreg file itself.  It is a KSH script for both Solaris and Win32
--- a/test/java/lang/Character/CheckProp.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/lang/Character/CheckProp.java	Tue May 08 07:34:53 2012 -0700
@@ -24,7 +24,7 @@
 
 /**
  * @test
- * @bug 7037261
+ * @bug 7037261 7070436
  * @summary  Check j.l.Character.isLowerCase/isUppercase/isAlphabetic/isIdeographic
  */
 
--- a/test/java/lang/Character/CheckScript.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/lang/Character/CheckScript.java	Tue May 08 07:34:53 2012 -0700
@@ -24,7 +24,7 @@
 
 /**
  * @test
- * @bug 6945564 6959267 7033561
+ * @bug 6945564 6959267 7033561 7070436
  * @summary  Check that the j.l.Character.UnicodeScript
  */
 
--- a/test/java/lang/Character/PropList.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/lang/Character/PropList.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,8 +1,8 @@
-# PropList-6.0.0.txt
-# Date: 2010-08-19, 00:48:28 GMT [MD]
+# PropList-6.1.0.txt
+# Date: 2011-11-30, 01:49:54 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 
@@ -50,6 +50,7 @@
 2212          ; Dash # Sm       MINUS SIGN
 2E17          ; Dash # Pd       DOUBLE OBLIQUE HYPHEN
 2E1A          ; Dash # Pd       HYPHEN WITH DIAERESIS
+2E3A..2E3B    ; Dash # Pd   [2] TWO-EM DASH..THREE-EM DASH
 301C          ; Dash # Pd       WAVE DASH
 3030          ; Dash # Pd       WAVY DASH
 30A0          ; Dash # Pd       KATAKANA-HIRAGANA DOUBLE HYPHEN
@@ -58,7 +59,7 @@
 FE63          ; Dash # Pd       SMALL HYPHEN-MINUS
 FF0D          ; Dash # Pd       FULLWIDTH HYPHEN-MINUS
 
-# Total code points: 25
+# Total code points: 27
 
 # ================================================
 
@@ -158,6 +159,7 @@
 A9C7..A9C9    ; Terminal_Punctuation # Po   [3] JAVANESE PADA PANGKAT..JAVANESE PADA LUNGSI
 AA5D..AA5F    ; Terminal_Punctuation # Po   [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
 AADF          ; Terminal_Punctuation # Po       TAI VIET SYMBOL KOI KOI
+AAF0..AAF1    ; Terminal_Punctuation # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; Terminal_Punctuation # Po       MEETEI MAYEK CHEIKHEI
 FE50..FE52    ; Terminal_Punctuation # Po   [3] SMALL COMMA..SMALL FULL STOP
 FE54..FE57    ; Terminal_Punctuation # Po   [4] SMALL SEMICOLON..SMALL EXCLAMATION MARK
@@ -175,9 +177,11 @@
 10B3A..10B3F  ; Terminal_Punctuation # Po   [6] TINY TWO DOTS OVER ONE DOT PUNCTUATION..LARGE ONE RING OVER TWO RINGS PUNCTUATION
 11047..1104D  ; Terminal_Punctuation # Po   [7] BRAHMI DANDA..BRAHMI PUNCTUATION LOTUS
 110BE..110C1  ; Terminal_Punctuation # Po   [4] KAITHI SECTION MARK..KAITHI DOUBLE DANDA
+11141..11143  ; Terminal_Punctuation # Po   [3] CHAKMA DANDA..CHAKMA QUESTION MARK
+111C5..111C6  ; Terminal_Punctuation # Po   [2] SHARADA DANDA..SHARADA DOUBLE DANDA
 12470..12473  ; Terminal_Punctuation # Po   [4] CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON
 
-# Total code points: 169
+# Total code points: 176
 
 # ================================================
 
@@ -320,8 +324,41 @@
 1D7AA..1D7C2  ; Other_Math # L&  [25] MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA..MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA
 1D7C4..1D7CB  ; Other_Math # L&   [8] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL BOLD SMALL DIGAMMA
 1D7CE..1D7FF  ; Other_Math # Nd  [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE
+1EE00..1EE03  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL
+1EE05..1EE1F  ; Other_Math # Lo  [27] ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF
+1EE21..1EE22  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM
+1EE24         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL HEH
+1EE27         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL HAH
+1EE29..1EE32  ; Other_Math # Lo  [10] ARABIC MATHEMATICAL INITIAL YEH..ARABIC MATHEMATICAL INITIAL QAF
+1EE34..1EE37  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL INITIAL SHEEN..ARABIC MATHEMATICAL INITIAL KHAH
+1EE39         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL DAD
+1EE3B         ; Other_Math # Lo       ARABIC MATHEMATICAL INITIAL GHAIN
+1EE42         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED JEEM
+1EE47         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED HAH
+1EE49         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED YEH
+1EE4B         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED LAM
+1EE4D..1EE4F  ; Other_Math # Lo   [3] ARABIC MATHEMATICAL TAILED NOON..ARABIC MATHEMATICAL TAILED AIN
+1EE51..1EE52  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL TAILED SAD..ARABIC MATHEMATICAL TAILED QAF
+1EE54         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED SHEEN
+1EE57         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED KHAH
+1EE59         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DAD
+1EE5B         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED GHAIN
+1EE5D         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DOTLESS NOON
+1EE5F         ; Other_Math # Lo       ARABIC MATHEMATICAL TAILED DOTLESS QAF
+1EE61..1EE62  ; Other_Math # Lo   [2] ARABIC MATHEMATICAL STRETCHED BEH..ARABIC MATHEMATICAL STRETCHED JEEM
+1EE64         ; Other_Math # Lo       ARABIC MATHEMATICAL STRETCHED HEH
+1EE67..1EE6A  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED HAH..ARABIC MATHEMATICAL STRETCHED KAF
+1EE6C..1EE72  ; Other_Math # Lo   [7] ARABIC MATHEMATICAL STRETCHED MEEM..ARABIC MATHEMATICAL STRETCHED QAF
+1EE74..1EE77  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED SHEEN..ARABIC MATHEMATICAL STRETCHED KHAH
+1EE79..1EE7C  ; Other_Math # Lo   [4] ARABIC MATHEMATICAL STRETCHED DAD..ARABIC MATHEMATICAL STRETCHED DOTLESS BEH
+1EE7E         ; Other_Math # Lo       ARABIC MATHEMATICAL STRETCHED DOTLESS FEH
+1EE80..1EE89  ; Other_Math # Lo  [10] ARABIC MATHEMATICAL LOOPED ALEF..ARABIC MATHEMATICAL LOOPED YEH
+1EE8B..1EE9B  ; Other_Math # Lo  [17] ARABIC MATHEMATICAL LOOPED LAM..ARABIC MATHEMATICAL LOOPED GHAIN
+1EEA1..1EEA3  ; Other_Math # Lo   [3] ARABIC MATHEMATICAL DOUBLE-STRUCK BEH..ARABIC MATHEMATICAL DOUBLE-STRUCK DAL
+1EEA5..1EEA9  ; Other_Math # Lo   [5] ARABIC MATHEMATICAL DOUBLE-STRUCK WAW..ARABIC MATHEMATICAL DOUBLE-STRUCK YEH
+1EEAB..1EEBB  ; Other_Math # Lo  [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN
 
-# Total code points: 1217
+# Total code points: 1358
 
 # ================================================
 
@@ -365,6 +402,8 @@
 081B..0823    ; Other_Alphabetic # Mn   [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
 0825..0827    ; Other_Alphabetic # Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
 0829..082C    ; Other_Alphabetic # Mn   [4] SAMARITAN VOWEL SIGN LONG I..SAMARITAN VOWEL SIGN SUKUN
+08E4..08E9    ; Other_Alphabetic # Mn   [6] ARABIC CURLY FATHA..ARABIC CURLY KASRATAN
+08F0..08FE    ; Other_Alphabetic # Mn  [15] ARABIC OPEN FATHATAN..ARABIC DAMMA WITH DOT
 0900..0902    ; Other_Alphabetic # Mn   [3] DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI SIGN ANUSVARA
 0903          ; Other_Alphabetic # Mc       DEVANAGARI SIGN VISARGA
 093A          ; Other_Alphabetic # Mn       DEVANAGARI VOWEL SIGN OE
@@ -525,6 +564,7 @@
 1BA2..1BA5    ; Other_Alphabetic # Mn   [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
 1BA6..1BA7    ; Other_Alphabetic # Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
 1BA8..1BA9    ; Other_Alphabetic # Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
+1BAC..1BAD    ; Other_Alphabetic # Mc   [2] SUNDANESE CONSONANT SIGN PASANGAN MA..SUNDANESE CONSONANT SIGN PASANGAN WA
 1BE7          ; Other_Alphabetic # Mc       BATAK VOWEL SIGN E
 1BE8..1BE9    ; Other_Alphabetic # Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
 1BEA..1BEC    ; Other_Alphabetic # Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
@@ -534,9 +574,11 @@
 1C24..1C2B    ; Other_Alphabetic # Mc   [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
 1C2C..1C33    ; Other_Alphabetic # Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
 1C34..1C35    ; Other_Alphabetic # Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
-1CF2          ; Other_Alphabetic # Mc       VEDIC SIGN ARDHAVISARGA
+1CF2..1CF3    ; Other_Alphabetic # Mc   [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
 24B6..24E9    ; Other_Alphabetic # So  [52] CIRCLED LATIN CAPITAL LETTER A..CIRCLED LATIN SMALL LETTER Z
 2DE0..2DFF    ; Other_Alphabetic # Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
+A674..A67B    ; Other_Alphabetic # Mn   [8] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC LETTER OMEGA
+A69F          ; Other_Alphabetic # Mn       COMBINING CYRILLIC LETTER IOTIFIED E
 A823..A824    ; Other_Alphabetic # Mc   [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I
 A825..A826    ; Other_Alphabetic # Mn   [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
 A827          ; Other_Alphabetic # Mc       SYLOTI NAGRI VOWEL SIGN OO
@@ -564,6 +606,10 @@
 AAB2..AAB4    ; Other_Alphabetic # Mn   [3] TAI VIET VOWEL I..TAI VIET VOWEL U
 AAB7..AAB8    ; Other_Alphabetic # Mn   [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
 AABE          ; Other_Alphabetic # Mn       TAI VIET VOWEL AM
+AAEB          ; Other_Alphabetic # Mc       MEETEI MAYEK VOWEL SIGN II
+AAEC..AAED    ; Other_Alphabetic # Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
+AAEE..AAEF    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
+AAF5          ; Other_Alphabetic # Mc       MEETEI MAYEK VOWEL SIGN VISARGA
 ABE3..ABE4    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
 ABE5          ; Other_Alphabetic # Mn       MEETEI MAYEK VOWEL SIGN ANAP
 ABE6..ABE7    ; Other_Alphabetic # Mc   [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP
@@ -581,8 +627,23 @@
 110B0..110B2  ; Other_Alphabetic # Mc   [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II
 110B3..110B6  ; Other_Alphabetic # Mn   [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
 110B7..110B8  ; Other_Alphabetic # Mc   [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU
+11100..11102  ; Other_Alphabetic # Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
+11127..1112B  ; Other_Alphabetic # Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
+1112C         ; Other_Alphabetic # Mc       CHAKMA VOWEL SIGN E
+1112D..11132  ; Other_Alphabetic # Mn   [6] CHAKMA VOWEL SIGN AI..CHAKMA AU MARK
+11180..11181  ; Other_Alphabetic # Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
+11182         ; Other_Alphabetic # Mc       SHARADA SIGN VISARGA
+111B3..111B5  ; Other_Alphabetic # Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
+111B6..111BE  ; Other_Alphabetic # Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
+111BF         ; Other_Alphabetic # Mc       SHARADA VOWEL SIGN AU
+116AB         ; Other_Alphabetic # Mn       TAKRI SIGN ANUSVARA
+116AC         ; Other_Alphabetic # Mc       TAKRI SIGN VISARGA
+116AD         ; Other_Alphabetic # Mn       TAKRI VOWEL SIGN AA
+116AE..116AF  ; Other_Alphabetic # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
+116B0..116B5  ; Other_Alphabetic # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
+16F51..16F7E  ; Other_Alphabetic # Mc  [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
 
-# Total code points: 795
+# Total code points: 922
 
 # ================================================
 
@@ -591,16 +652,15 @@
 3021..3029    ; Ideographic # Nl   [9] HANGZHOU NUMERAL ONE..HANGZHOU NUMERAL NINE
 3038..303A    ; Ideographic # Nl   [3] HANGZHOU NUMERAL TEN..HANGZHOU NUMERAL THIRTY
 3400..4DB5    ; Ideographic # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Ideographic # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
-F900..FA2D    ; Ideographic # Lo [302] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA2D
-FA30..FA6D    ; Ideographic # Lo  [62] CJK COMPATIBILITY IDEOGRAPH-FA30..CJK COMPATIBILITY IDEOGRAPH-FA6D
+4E00..9FCC    ; Ideographic # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
+F900..FA6D    ; Ideographic # Lo [366] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA6D
 FA70..FAD9    ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
 20000..2A6D6  ; Ideographic # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
 2A700..2B734  ; Ideographic # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Ideographic # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 2F800..2FA1D  ; Ideographic # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 75630
+# Total code points: 75633
 
 # ================================================
 
@@ -645,6 +705,7 @@
 07EB..07F3    ; Diacritic # Mn   [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
 07F4..07F5    ; Diacritic # Lm   [2] NKO HIGH TONE APOSTROPHE..NKO LOW TONE APOSTROPHE
 0818..0819    ; Diacritic # Mn   [2] SAMARITAN MARK OCCLUSION..SAMARITAN MARK DAGESH
+08E4..08FE    ; Diacritic # Mn  [27] ARABIC CURLY FATHA..ARABIC DAMMA WITH DOT
 093C          ; Diacritic # Mn       DEVANAGARI SIGN NUKTA
 094D          ; Diacritic # Mn       DEVANAGARI SIGN VIRAMA
 0951..0954    ; Diacritic # Mn   [4] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI ACUTE ACCENT
@@ -689,6 +750,7 @@
 1B44          ; Diacritic # Mc       BALINESE ADEG ADEG
 1B6B..1B73    ; Diacritic # Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
 1BAA          ; Diacritic # Mc       SUNDANESE SIGN PAMAAEH
+1BAB          ; Diacritic # Mn       SUNDANESE SIGN VIRAMA
 1C36..1C37    ; Diacritic # Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
 1C78..1C7D    ; Diacritic # Lm   [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD
 1CD0..1CD2    ; Diacritic # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
@@ -697,8 +759,8 @@
 1CE1          ; Diacritic # Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
 1CE2..1CE8    ; Diacritic # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
 1CED          ; Diacritic # Mn       VEDIC SIGN TIRYAK
-1D2C..1D61    ; Diacritic # Lm  [54] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL CHI
-1D62..1D6A    ; Diacritic # L&   [9] LATIN SUBSCRIPT SMALL LETTER I..GREEK SUBSCRIPT SMALL LETTER CHI
+1CF4          ; Diacritic # Mn       VEDIC TONE CANDRA ABOVE
+1D2C..1D6A    ; Diacritic # Lm  [63] MODIFIER LETTER CAPITAL A..GREEK SUBSCRIPT SMALL LETTER CHI
 1DC4..1DCF    ; Diacritic # Mn  [12] COMBINING MACRON-ACUTE..COMBINING ZIGZAG BELOW
 1DFD..1DFF    ; Diacritic # Mn   [3] COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 1FBD          ; Diacritic # Sk       GREEK KORONIS
@@ -709,7 +771,8 @@
 1FFD..1FFE    ; Diacritic # Sk   [2] GREEK OXIA..GREEK DASIA
 2CEF..2CF1    ; Diacritic # Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
 2E2F          ; Diacritic # Lm       VERTICAL TILDE
-302A..302F    ; Diacritic # Mn   [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK
+302A..302D    ; Diacritic # Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
+302E..302F    ; Diacritic # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 3099..309A    ; Diacritic # Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
 309B..309C    ; Diacritic # Sk   [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
 30FC          ; Diacritic # Lm       KATAKANA-HIRAGANA PROLONGED SOUND MARK
@@ -720,6 +783,7 @@
 A717..A71F    ; Diacritic # Lm   [9] MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOW INVERTED EXCLAMATION MARK
 A720..A721    ; Diacritic # Sk   [2] MODIFIER LETTER STRESS AND HIGH TONE..MODIFIER LETTER STRESS AND LOW TONE
 A788          ; Diacritic # Lm       MODIFIER LETTER LOW CIRCUMFLEX ACCENT
+A7F8..A7F9    ; Diacritic # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 A8C4          ; Diacritic # Mn       SAURASHTRA SIGN VIRAMA
 A8E0..A8F1    ; Diacritic # Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
 A92B..A92D    ; Diacritic # Mn   [3] KAYAH LI TONE PLOPHU..KAYAH LI TONE CALYA PLOPHU
@@ -732,6 +796,7 @@
 AAC0          ; Diacritic # Lo       TAI VIET TONE MAI NUENG
 AAC1          ; Diacritic # Mn       TAI VIET TONE MAI THO
 AAC2          ; Diacritic # Lo       TAI VIET TONE MAI SONG
+AAF6          ; Diacritic # Mn       MEETEI MAYEK VIRAMA
 ABEC          ; Diacritic # Mc       MEETEI MAYEK LUM IYEK
 ABED          ; Diacritic # Mn       MEETEI MAYEK APUN IYEK
 FB1E          ; Diacritic # Mn       HEBREW POINT JUDEO-SPANISH VARIKA
@@ -742,13 +807,19 @@
 FF9E..FF9F    ; Diacritic # Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
 FFE3          ; Diacritic # Sk       FULLWIDTH MACRON
 110B9..110BA  ; Diacritic # Mn   [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
+11133..11134  ; Diacritic # Mn   [2] CHAKMA VIRAMA..CHAKMA MAAYYAA
+111C0         ; Diacritic # Mc       SHARADA SIGN VIRAMA
+116B6         ; Diacritic # Mc       TAKRI SIGN VIRAMA
+116B7         ; Diacritic # Mn       TAKRI SIGN NUKTA
+16F8F..16F92  ; Diacritic # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
+16F93..16F9F  ; Diacritic # Lm  [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8
 1D167..1D169  ; Diacritic # Mn   [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
 1D16D..1D172  ; Diacritic # Mc   [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5
 1D17B..1D182  ; Diacritic # Mn   [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
 1D185..1D18B  ; Diacritic # Mn   [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
 1D1AA..1D1AD  ; Diacritic # Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
 
-# Total code points: 639
+# Total code points: 693
 
 # ================================================
 
@@ -758,6 +829,7 @@
 07FA          ; Extender # Lm       NKO LAJANYALAN
 0E46          ; Extender # Lm       THAI CHARACTER MAIYAMOK
 0EC6          ; Extender # Lm       LAO KO LA
+180A          ; Extender # Po       MONGOLIAN NIRUGU
 1843          ; Extender # Lm       MONGOLIAN LETTER TODO LONG VOWEL SIGN
 1AA7          ; Extender # Lm       TAI THAM SIGN MAI YAMOK
 1C36          ; Extender # Mn       LEPCHA SIGN RAN
@@ -771,27 +843,33 @@
 A9CF          ; Extender # Lm       JAVANESE PANGRANGKEP
 AA70          ; Extender # Lm       MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION
 AADD          ; Extender # Lm       TAI VIET SYMBOL SAM
+AAF3..AAF4    ; Extender # Lm   [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK
 FF70          ; Extender # Lm       HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
 
-# Total code points: 28
+# Total code points: 31
 
 # ================================================
 
+00AA          ; Other_Lowercase # Lo       FEMININE ORDINAL INDICATOR
+00BA          ; Other_Lowercase # Lo       MASCULINE ORDINAL INDICATOR
 02B0..02B8    ; Other_Lowercase # Lm   [9] MODIFIER LETTER SMALL H..MODIFIER LETTER SMALL Y
 02C0..02C1    ; Other_Lowercase # Lm   [2] MODIFIER LETTER GLOTTAL STOP..MODIFIER LETTER REVERSED GLOTTAL STOP
 02E0..02E4    ; Other_Lowercase # Lm   [5] MODIFIER LETTER SMALL GAMMA..MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
 0345          ; Other_Lowercase # Mn       COMBINING GREEK YPOGEGRAMMENI
 037A          ; Other_Lowercase # Lm       GREEK YPOGEGRAMMENI
-1D2C..1D61    ; Other_Lowercase # Lm  [54] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL CHI
+1D2C..1D6A    ; Other_Lowercase # Lm  [63] MODIFIER LETTER CAPITAL A..GREEK SUBSCRIPT SMALL LETTER CHI
 1D78          ; Other_Lowercase # Lm       MODIFIER LETTER CYRILLIC EN
 1D9B..1DBF    ; Other_Lowercase # Lm  [37] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA
-2090..2094    ; Other_Lowercase # Lm   [5] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA
+2071          ; Other_Lowercase # Lm       SUPERSCRIPT LATIN SMALL LETTER I
+207F          ; Other_Lowercase # Lm       SUPERSCRIPT LATIN SMALL LETTER N
+2090..209C    ; Other_Lowercase # Lm  [13] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER T
 2170..217F    ; Other_Lowercase # Nl  [16] SMALL ROMAN NUMERAL ONE..SMALL ROMAN NUMERAL ONE THOUSAND
 24D0..24E9    ; Other_Lowercase # So  [26] CIRCLED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z
-2C7D          ; Other_Lowercase # Lm       MODIFIER LETTER CAPITAL V
+2C7C..2C7D    ; Other_Lowercase # Lm   [2] LATIN SUBSCRIPT SMALL LETTER J..MODIFIER LETTER CAPITAL V
 A770          ; Other_Lowercase # Lm       MODIFIER LETTER US
+A7F8..A7F9    ; Other_Lowercase # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 
-# Total code points: 159
+# Total code points: 183
 
 # ================================================
 
@@ -838,11 +916,12 @@
 0DCF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN AELA-PILLA
 0DDF          ; Other_Grapheme_Extend # Mc       SINHALA VOWEL SIGN GAYANUKITTA
 200C..200D    ; Other_Grapheme_Extend # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
+302E..302F    ; Other_Grapheme_Extend # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 FF9E..FF9F    ; Other_Grapheme_Extend # Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
 1D165         ; Other_Grapheme_Extend # Mc       MUSICAL SYMBOL COMBINING STEM
 1D16E..1D172  ; Other_Grapheme_Extend # Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
 
-# Total code points: 23
+# Total code points: 25
 
 # ================================================
 
@@ -868,7 +947,7 @@
 # ================================================
 
 3400..4DB5    ; Unified_Ideograph # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Unified_Ideograph # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
+4E00..9FCC    ; Unified_Ideograph # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
 FA0E..FA0F    ; Unified_Ideograph # Lo   [2] CJK COMPATIBILITY IDEOGRAPH-FA0E..CJK COMPATIBILITY IDEOGRAPH-FA0F
 FA11          ; Unified_Ideograph # Lo       CJK COMPATIBILITY IDEOGRAPH-FA11
 FA13..FA14    ; Unified_Ideograph # Lo   [2] CJK COMPATIBILITY IDEOGRAPH-FA13..CJK COMPATIBILITY IDEOGRAPH-FA14
@@ -880,12 +959,13 @@
 2A700..2B734  ; Unified_Ideograph # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Unified_Ideograph # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 
-# Total code points: 74616
+# Total code points: 74617
 
 # ================================================
 
 034F          ; Other_Default_Ignorable_Code_Point # Mn       COMBINING GRAPHEME JOINER
 115F..1160    ; Other_Default_Ignorable_Code_Point # Lo   [2] HANGUL CHOSEONG FILLER..HANGUL JUNGSEONG FILLER
+17B4..17B5    ; Other_Default_Ignorable_Code_Point # Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
 2065..2069    ; Other_Default_Ignorable_Code_Point # Cn   [5] <reserved-2065>..<reserved-2069>
 3164          ; Other_Default_Ignorable_Code_Point # Lo       HANGUL FILLER
 FFA0          ; Other_Default_Ignorable_Code_Point # Lo       HALFWIDTH HANGUL FILLER
@@ -895,7 +975,7 @@
 E0080..E00FF  ; Other_Default_Ignorable_Code_Point # Cn [128] <reserved-E0080>..<reserved-E00FF>
 E01F0..E0FFF  ; Other_Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
 
-# Total code points: 3778
+# Total code points: 3780
 
 # ================================================
 
@@ -923,7 +1003,7 @@
 03F3          ; Soft_Dotted # L&       GREEK LETTER YOT
 0456          ; Soft_Dotted # L&       CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
 0458          ; Soft_Dotted # L&       CYRILLIC SMALL LETTER JE
-1D62          ; Soft_Dotted # L&       LATIN SUBSCRIPT SMALL LETTER I
+1D62          ; Soft_Dotted # Lm       LATIN SUBSCRIPT SMALL LETTER I
 1D96          ; Soft_Dotted # L&       LATIN SMALL LETTER I WITH RETROFLEX HOOK
 1DA4          ; Soft_Dotted # Lm       MODIFIER LETTER SMALL I WITH STROKE
 1DA8          ; Soft_Dotted # Lm       MODIFIER LETTER SMALL J WITH CROSSED-TAIL
@@ -931,7 +1011,7 @@
 1ECB          ; Soft_Dotted # L&       LATIN SMALL LETTER I WITH DOT BELOW
 2071          ; Soft_Dotted # Lm       SUPERSCRIPT LATIN SMALL LETTER I
 2148..2149    ; Soft_Dotted # L&   [2] DOUBLE-STRUCK ITALIC SMALL I..DOUBLE-STRUCK ITALIC SMALL J
-2C7C          ; Soft_Dotted # L&       LATIN SUBSCRIPT SMALL LETTER J
+2C7C          ; Soft_Dotted # Lm       LATIN SUBSCRIPT SMALL LETTER J
 1D422..1D423  ; Soft_Dotted # L&   [2] MATHEMATICAL BOLD SMALL I..MATHEMATICAL BOLD SMALL J
 1D456..1D457  ; Soft_Dotted # L&   [2] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL ITALIC SMALL J
 1D48A..1D48B  ; Soft_Dotted # L&   [2] MATHEMATICAL BOLD ITALIC SMALL I..MATHEMATICAL BOLD ITALIC SMALL J
@@ -1014,6 +1094,7 @@
 A92F          ; STerm # Po       KAYAH LI SIGN SHYA
 A9C8..A9C9    ; STerm # Po   [2] JAVANESE PADA LINGSA..JAVANESE PADA LUNGSI
 AA5D..AA5F    ; STerm # Po   [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
+AAF0..AAF1    ; STerm # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
 ABEB          ; STerm # Po       MEETEI MAYEK CHEIKHEI
 FE52          ; STerm # Po       SMALL FULL STOP
 FE56..FE57    ; STerm # Po   [2] SMALL QUESTION MARK..SMALL EXCLAMATION MARK
@@ -1024,8 +1105,10 @@
 10A56..10A57  ; STerm # Po   [2] KHAROSHTHI PUNCTUATION DANDA..KHAROSHTHI PUNCTUATION DOUBLE DANDA
 11047..11048  ; STerm # Po   [2] BRAHMI DANDA..BRAHMI DOUBLE DANDA
 110BE..110C1  ; STerm # Po   [4] KAITHI SECTION MARK..KAITHI DOUBLE DANDA
+11141..11143  ; STerm # Po   [3] CHAKMA DANDA..CHAKMA QUESTION MARK
+111C5..111C6  ; STerm # Po   [2] SHARADA DANDA..SHARADA DOUBLE DANDA
 
-# Total code points: 76
+# Total code points: 83
 
 # ================================================
 
@@ -1072,14 +1155,15 @@
 007E          ; Pattern_Syntax # Sm       TILDE
 00A1          ; Pattern_Syntax # Po       INVERTED EXCLAMATION MARK
 00A2..00A5    ; Pattern_Syntax # Sc   [4] CENT SIGN..YEN SIGN
-00A6..00A7    ; Pattern_Syntax # So   [2] BROKEN BAR..SECTION SIGN
+00A6          ; Pattern_Syntax # So       BROKEN BAR
+00A7          ; Pattern_Syntax # Po       SECTION SIGN
 00A9          ; Pattern_Syntax # So       COPYRIGHT SIGN
 00AB          ; Pattern_Syntax # Pi       LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
 00AC          ; Pattern_Syntax # Sm       NOT SIGN
 00AE          ; Pattern_Syntax # So       REGISTERED SIGN
 00B0          ; Pattern_Syntax # So       DEGREE SIGN
 00B1          ; Pattern_Syntax # Sm       PLUS-MINUS SIGN
-00B6          ; Pattern_Syntax # So       PILCROW SIGN
+00B6          ; Pattern_Syntax # Po       PILCROW SIGN
 00BB          ; Pattern_Syntax # Pf       RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
 00BF          ; Pattern_Syntax # Po       INVERTED QUESTION MARK
 00D7          ; Pattern_Syntax # Sm       MULTIPLICATION SIGN
@@ -1173,11 +1257,7 @@
 27C0..27C4    ; Pattern_Syntax # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
 27C5          ; Pattern_Syntax # Ps       LEFT S-SHAPED BAG DELIMITER
 27C6          ; Pattern_Syntax # Pe       RIGHT S-SHAPED BAG DELIMITER
-27C7..27CA    ; Pattern_Syntax # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
-27CB          ; Pattern_Syntax # Cn       <reserved-27CB>
-27CC          ; Pattern_Syntax # Sm       LONG DIVISION
-27CD          ; Pattern_Syntax # Cn       <reserved-27CD>
-27CE..27E5    ; Pattern_Syntax # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
+27C7..27E5    ; Pattern_Syntax # Sm  [31] OR WITH DOT INSIDE..WHITE SQUARE WITH RIGHTWARDS TICK
 27E6          ; Pattern_Syntax # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
 27E7          ; Pattern_Syntax # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
 27E8          ; Pattern_Syntax # Ps       MATHEMATICAL LEFT ANGLE BRACKET
@@ -1260,8 +1340,9 @@
 2E29          ; Pattern_Syntax # Pe       RIGHT DOUBLE PARENTHESIS
 2E2A..2E2E    ; Pattern_Syntax # Po   [5] TWO DOTS OVER ONE DOT PUNCTUATION..REVERSED QUESTION MARK
 2E2F          ; Pattern_Syntax # Lm       VERTICAL TILDE
-2E30..2E31    ; Pattern_Syntax # Po   [2] RING POINT..WORD SEPARATOR MIDDLE DOT
-2E32..2E7F    ; Pattern_Syntax # Cn  [78] <reserved-2E32>..<reserved-2E7F>
+2E30..2E39    ; Pattern_Syntax # Po  [10] RING POINT..TOP HALF SECTION SIGN
+2E3A..2E3B    ; Pattern_Syntax # Pd   [2] TWO-EM DASH..THREE-EM DASH
+2E3C..2E7F    ; Pattern_Syntax # Cn  [68] <reserved-2E3C>..<reserved-2E7F>
 3001..3003    ; Pattern_Syntax # Po   [3] IDEOGRAPHIC COMMA..DITTO MARK
 3008          ; Pattern_Syntax # Ps       LEFT ANGLE BRACKET
 3009          ; Pattern_Syntax # Pe       RIGHT ANGLE BRACKET
--- a/test/java/lang/Character/PropertyValueAliases.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/lang/Character/PropertyValueAliases.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,15 +1,14 @@
-# PropertyValueAliases-6.0.0.txt
-# Date: 2010-07-17, 22:44:06 GMT [MD]
+# PropertyValueAliases-6.1.0.txt
+# Date: 2011-12-07, 23:40:57 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 #
 # This file contains aliases for property values used in the UCD.
 # These names can be used for XML formats of UCD data, for regular-expression
 # property tests, and other programmatic textual descriptions of Unicode data.
-# For information on which properties are normative, see UCD.html.
 #
 # The names may be translated in appropriate environments, and additional
 # aliases may be useful.
@@ -23,7 +22,6 @@
 # property value name is used.
 #
 # Second Field: The second field is an abbreviated name.
-# If there is no abbreviated name available, the field is marked with "n/a".
 #
 # Third Field: The third field is a long name.
 #
@@ -57,61 +55,62 @@
 
 # ASCII_Hex_Digit (AHex)
 
-AHex; N        ; No                               ; F                                ; False
-AHex; Y        ; Yes                              ; T                                ; True
+AHex; N                               ; No                               ; F                                ; False
+AHex; Y                               ; Yes                              ; T                                ; True
 
 # Age (age)
 
-age; n/a       ; 1.1
-age; n/a       ; 2.0
-age; n/a       ; 2.1
-age; n/a       ; 3.0
-age; n/a       ; 3.1
-age; n/a       ; 3.2
-age; n/a       ; 4.0
-age; n/a       ; 4.1
-age; n/a       ; 5.0
-age; n/a       ; 5.1
-age; n/a       ; 5.2
-age; n/a       ; 6.0
-age; n/a       ; unassigned
+age; 1.1                              ; V1_1
+age; 2.0                              ; V2_0
+age; 2.1                              ; V2_1
+age; 3.0                              ; V3_0
+age; 3.1                              ; V3_1
+age; 3.2                              ; V3_2
+age; 4.0                              ; V4_0
+age; 4.1                              ; V4_1
+age; 5.0                              ; V5_0
+age; 5.1                              ; V5_1
+age; 5.2                              ; V5_2
+age; 6.0                              ; V6_0
+age; 6.1                              ; V6_1
+age; NA                               ; Unassigned
 
 # Alphabetic (Alpha)
 
-Alpha; N       ; No                               ; F                                ; False
-Alpha; Y       ; Yes                              ; T                                ; True
+Alpha; N                              ; No                               ; F                                ; False
+Alpha; Y                              ; Yes                              ; T                                ; True
 
 # Bidi_Class (bc)
 
-bc ; AL        ; Arabic_Letter
-bc ; AN        ; Arabic_Number
-bc ; B         ; Paragraph_Separator
-bc ; BN        ; Boundary_Neutral
-bc ; CS        ; Common_Separator
-bc ; EN        ; European_Number
-bc ; ES        ; European_Separator
-bc ; ET        ; European_Terminator
-bc ; L         ; Left_To_Right
-bc ; LRE       ; Left_To_Right_Embedding
-bc ; LRO       ; Left_To_Right_Override
-bc ; NSM       ; Nonspacing_Mark
-bc ; ON        ; Other_Neutral
-bc ; PDF       ; Pop_Directional_Format
-bc ; R         ; Right_To_Left
-bc ; RLE       ; Right_To_Left_Embedding
-bc ; RLO       ; Right_To_Left_Override
-bc ; S         ; Segment_Separator
-bc ; WS        ; White_Space
+bc ; AL                               ; Arabic_Letter
+bc ; AN                               ; Arabic_Number
+bc ; B                                ; Paragraph_Separator
+bc ; BN                               ; Boundary_Neutral
+bc ; CS                               ; Common_Separator
+bc ; EN                               ; European_Number
+bc ; ES                               ; European_Separator
+bc ; ET                               ; European_Terminator
+bc ; L                                ; Left_To_Right
+bc ; LRE                              ; Left_To_Right_Embedding
+bc ; LRO                              ; Left_To_Right_Override
+bc ; NSM                              ; Nonspacing_Mark
+bc ; ON                               ; Other_Neutral
+bc ; PDF                              ; Pop_Directional_Format
+bc ; R                                ; Right_To_Left
+bc ; RLE                              ; Right_To_Left_Embedding
+bc ; RLO                              ; Right_To_Left_Override
+bc ; S                                ; Segment_Separator
+bc ; WS                               ; White_Space
 
 # Bidi_Control (Bidi_C)
 
-Bidi_C; N      ; No                               ; F                                ; False
-Bidi_C; Y      ; Yes                              ; T                                ; True
+Bidi_C; N                             ; No                               ; F                                ; False
+Bidi_C; Y                             ; Yes                              ; T                                ; True
 
 # Bidi_Mirrored (Bidi_M)
 
-Bidi_M; N      ; No                               ; F                                ; False
-Bidi_M; Y      ; Yes                              ; T                                ; True
+Bidi_M; N                             ; No                               ; F                                ; False
+Bidi_M; Y                             ; Yes                              ; T                                ; True
 
 # Bidi_Mirroring_Glyph (bmg)
 
@@ -119,239 +118,286 @@
 
 # Block (blk)
 
-blk; n/a       ; Aegean_Numbers
-blk; n/a       ; Alchemical_Symbols
-blk; n/a       ; Alphabetic_Presentation_Forms
-blk; n/a       ; Ancient_Greek_Musical_Notation
-blk; n/a       ; Ancient_Greek_Numbers
-blk; n/a       ; Ancient_Symbols
-blk; n/a       ; Arabic
-blk; n/a       ; Arabic_Presentation_Forms_A      ; Arabic_Presentation_Forms-A
-blk; n/a       ; Arabic_Presentation_Forms_B
-blk; n/a       ; Arabic_Supplement
-blk; n/a       ; Armenian
-blk; n/a       ; Arrows
-blk; n/a       ; Avestan
-blk; n/a       ; Balinese
-blk; n/a       ; Bamum
-blk; n/a       ; Bamum_Supplement
-blk; n/a       ; Basic_Latin                      ; ASCII
-blk; n/a       ; Batak
-blk; n/a       ; Bengali
-blk; n/a       ; Block_Elements
-blk; n/a       ; Bopomofo
-blk; n/a       ; Bopomofo_Extended
-blk; n/a       ; Box_Drawing
-blk; n/a       ; Brahmi
-blk; n/a       ; Braille_Patterns
-blk; n/a       ; Buginese
-blk; n/a       ; Buhid
-blk; n/a       ; Byzantine_Musical_Symbols
-blk; n/a       ; Carian
-blk; n/a       ; Cham
-blk; n/a       ; Cherokee
-blk; n/a       ; CJK_Compatibility
-blk; n/a       ; CJK_Compatibility_Forms
-blk; n/a       ; CJK_Compatibility_Ideographs
-blk; n/a       ; CJK_Compatibility_Ideographs_Supplement
-blk; n/a       ; CJK_Radicals_Supplement
-blk; n/a       ; CJK_Strokes
-blk; n/a       ; CJK_Symbols_And_Punctuation
-blk; n/a       ; CJK_Unified_Ideographs
-blk; n/a       ; CJK_Unified_Ideographs_Extension_A
-blk; n/a       ; CJK_Unified_Ideographs_Extension_B
-blk; n/a       ; CJK_Unified_Ideographs_Extension_C
-blk; n/a       ; CJK_Unified_Ideographs_Extension_D
-blk; n/a       ; Combining_Diacritical_Marks
-blk; n/a       ; Combining_Diacritical_Marks_For_Symbols; Combining_Marks_For_Symbols
-blk; n/a       ; Combining_Diacritical_Marks_Supplement
-blk; n/a       ; Combining_Half_Marks
-blk; n/a       ; Common_Indic_Number_Forms
-blk; n/a       ; Control_Pictures
-blk; n/a       ; Coptic
-blk; n/a       ; Counting_Rod_Numerals
-blk; n/a       ; Cuneiform
-blk; n/a       ; Cuneiform_Numbers_And_Punctuation
-blk; n/a       ; Currency_Symbols
-blk; n/a       ; Cypriot_Syllabary
-blk; n/a       ; Cyrillic
-blk; n/a       ; Cyrillic_Extended_A
-blk; n/a       ; Cyrillic_Extended_B
-blk; n/a       ; Cyrillic_Supplement              ; Cyrillic_Supplementary
-blk; n/a       ; Deseret
-blk; n/a       ; Devanagari
-blk; n/a       ; Devanagari_Extended
-blk; n/a       ; Dingbats
-blk; n/a       ; Domino_Tiles
-blk; n/a       ; Egyptian_Hieroglyphs
-blk; n/a       ; Emoticons
-blk; n/a       ; Enclosed_Alphanumeric_Supplement
-blk; n/a       ; Enclosed_Alphanumerics
-blk; n/a       ; Enclosed_CJK_Letters_And_Months
-blk; n/a       ; Enclosed_Ideographic_Supplement
-blk; n/a       ; Ethiopic
-blk; n/a       ; Ethiopic_Extended
-blk; n/a       ; Ethiopic_Extended_A
-blk; n/a       ; Ethiopic_Supplement
-blk; n/a       ; General_Punctuation
-blk; n/a       ; Geometric_Shapes
-blk; n/a       ; Georgian
-blk; n/a       ; Georgian_Supplement
-blk; n/a       ; Glagolitic
-blk; n/a       ; Gothic
-blk; n/a       ; Greek_And_Coptic                 ; Greek
-blk; n/a       ; Greek_Extended
-blk; n/a       ; Gujarati
-blk; n/a       ; Gurmukhi
-blk; n/a       ; Halfwidth_And_Fullwidth_Forms
-blk; n/a       ; Hangul_Compatibility_Jamo
-blk; n/a       ; Hangul_Jamo
-blk; n/a       ; Hangul_Jamo_Extended_A
-blk; n/a       ; Hangul_Jamo_Extended_B
-blk; n/a       ; Hangul_Syllables
-blk; n/a       ; Hanunoo
-blk; n/a       ; Hebrew
-blk; n/a       ; High_Private_Use_Surrogates
-blk; n/a       ; High_Surrogates
-blk; n/a       ; Hiragana
-blk; n/a       ; Ideographic_Description_Characters
-blk; n/a       ; Imperial_Aramaic
-blk; n/a       ; Inscriptional_Pahlavi
-blk; n/a       ; Inscriptional_Parthian
-blk; n/a       ; IPA_Extensions
-blk; n/a       ; Javanese
-blk; n/a       ; Kaithi
-blk; n/a       ; Kana_Supplement
-blk; n/a       ; Kanbun
-blk; n/a       ; Kangxi_Radicals
-blk; n/a       ; Kannada
-blk; n/a       ; Katakana
-blk; n/a       ; Katakana_Phonetic_Extensions
-blk; n/a       ; Kayah_Li
-blk; n/a       ; Kharoshthi
-blk; n/a       ; Khmer
-blk; n/a       ; Khmer_Symbols
-blk; n/a       ; Lao
-blk; n/a       ; Latin_1_Supplement               ; Latin_1
-blk; n/a       ; Latin_Extended_A
-blk; n/a       ; Latin_Extended_Additional
-blk; n/a       ; Latin_Extended_B
-blk; n/a       ; Latin_Extended_C
-blk; n/a       ; Latin_Extended_D
-blk; n/a       ; Lepcha
-blk; n/a       ; Letterlike_Symbols
-blk; n/a       ; Limbu
-blk; n/a       ; Linear_B_Ideograms
-blk; n/a       ; Linear_B_Syllabary
-blk; n/a       ; Lisu
-blk; n/a       ; Low_Surrogates
-blk; n/a       ; Lycian
-blk; n/a       ; Lydian
-blk; n/a       ; Mahjong_Tiles
-blk; n/a       ; Malayalam
-blk; n/a       ; Mandaic
-blk; n/a       ; Mathematical_Alphanumeric_Symbols
-blk; n/a       ; Mathematical_Operators
-blk; n/a       ; Meetei_Mayek
-blk; n/a       ; Miscellaneous_Mathematical_Symbols_A
-blk; n/a       ; Miscellaneous_Mathematical_Symbols_B
-blk; n/a       ; Miscellaneous_Symbols
-blk; n/a       ; Miscellaneous_Symbols_And_Arrows
-blk; n/a       ; Miscellaneous_Symbols_And_Pictographs
-blk; n/a       ; Miscellaneous_Technical
-blk; n/a       ; Modifier_Tone_Letters
-blk; n/a       ; Mongolian
-blk; n/a       ; Musical_Symbols
-blk; n/a       ; Myanmar
-blk; n/a       ; Myanmar_Extended_A
-blk; n/a       ; New_Tai_Lue
-blk; n/a       ; NKo
-blk; n/a       ; No_Block
-blk; n/a       ; Number_Forms
-blk; n/a       ; Ogham
-blk; n/a       ; Ol_Chiki
-blk; n/a       ; Old_Italic
-blk; n/a       ; Old_Persian
-blk; n/a       ; Old_South_Arabian
-blk; n/a       ; Old_Turkic
-blk; n/a       ; Optical_Character_Recognition
-blk; n/a       ; Oriya
-blk; n/a       ; Osmanya
-blk; n/a       ; Phags_Pa
-blk; n/a       ; Phaistos_Disc
-blk; n/a       ; Phoenician
-blk; n/a       ; Phonetic_Extensions
-blk; n/a       ; Phonetic_Extensions_Supplement
-blk; n/a       ; Playing_Cards
-blk; n/a       ; Private_Use_Area                 ; Private_Use
-blk; n/a       ; Rejang
-blk; n/a       ; Rumi_Numeral_Symbols
-blk; n/a       ; Runic
-blk; n/a       ; Samaritan
-blk; n/a       ; Saurashtra
-blk; n/a       ; Shavian
-blk; n/a       ; Sinhala
-blk; n/a       ; Small_Form_Variants
-blk; n/a       ; Spacing_Modifier_Letters
-blk; n/a       ; Specials
-blk; n/a       ; Sundanese
-blk; n/a       ; Superscripts_And_Subscripts
-blk; n/a       ; Supplemental_Arrows_A
-blk; n/a       ; Supplemental_Arrows_B
-blk; n/a       ; Supplemental_Mathematical_Operators
-blk; n/a       ; Supplemental_Punctuation
-blk; n/a       ; Supplementary_Private_Use_Area_A
-blk; n/a       ; Supplementary_Private_Use_Area_B
-blk; n/a       ; Syloti_Nagri
-blk; n/a       ; Syriac
-blk; n/a       ; Tagalog
-blk; n/a       ; Tagbanwa
-blk; n/a       ; Tags
-blk; n/a       ; Tai_Le
-blk; n/a       ; Tai_Tham
-blk; n/a       ; Tai_Viet
-blk; n/a       ; Tai_Xuan_Jing_Symbols
-blk; n/a       ; Tamil
-blk; n/a       ; Telugu
-blk; n/a       ; Thaana
-blk; n/a       ; Thai
-blk; n/a       ; Tibetan
-blk; n/a       ; Tifinagh
-blk; n/a       ; Transport_And_Map_Symbols
-blk; n/a       ; Ugaritic
-blk; n/a       ; Unified_Canadian_Aboriginal_Syllabics; Canadian_Syllabics
-blk; n/a       ; Unified_Canadian_Aboriginal_Syllabics_Extended
-blk; n/a       ; Vai
-blk; n/a       ; Variation_Selectors
-blk; n/a       ; Variation_Selectors_Supplement
-blk; n/a       ; Vedic_Extensions
-blk; n/a       ; Vertical_Forms
-blk; n/a       ; Yi_Radicals
-blk; n/a       ; Yi_Syllables
-blk; n/a       ; Yijing_Hexagram_Symbols
+blk; Aegean_Numbers                   ; Aegean_Numbers
+blk; Alchemical                       ; Alchemical_Symbols
+blk; Alphabetic_PF                    ; Alphabetic_Presentation_Forms
+blk; Ancient_Greek_Music              ; Ancient_Greek_Musical_Notation
+blk; Ancient_Greek_Numbers            ; Ancient_Greek_Numbers
+blk; Ancient_Symbols                  ; Ancient_Symbols
+blk; Arabic                           ; Arabic
+blk; Arabic_Ext_A                     ; Arabic_Extended_A
+blk; Arabic_Math                      ; Arabic_Mathematical_Alphabetic_Symbols
+blk; Arabic_PF_A                      ; Arabic_Presentation_Forms_A      ; Arabic_Presentation_Forms-A
+blk; Arabic_PF_B                      ; Arabic_Presentation_Forms_B
+blk; Arabic_Sup                       ; Arabic_Supplement
+blk; Armenian                         ; Armenian
+blk; Arrows                           ; Arrows
+blk; ASCII                            ; Basic_Latin
+blk; Avestan                          ; Avestan
+blk; Balinese                         ; Balinese
+blk; Bamum                            ; Bamum
+blk; Bamum_Sup                        ; Bamum_Supplement
+blk; Batak                            ; Batak
+blk; Bengali                          ; Bengali
+blk; Block_Elements                   ; Block_Elements
+blk; Bopomofo                         ; Bopomofo
+blk; Bopomofo_Ext                     ; Bopomofo_Extended
+blk; Box_Drawing                      ; Box_Drawing
+blk; Brahmi                           ; Brahmi
+blk; Braille                          ; Braille_Patterns
+blk; Buginese                         ; Buginese
+blk; Buhid                            ; Buhid
+blk; Byzantine_Music                  ; Byzantine_Musical_Symbols
+blk; Carian                           ; Carian
+blk; Chakma                           ; Chakma
+blk; Cham                             ; Cham
+blk; Cherokee                         ; Cherokee
+blk; CJK                              ; CJK_Unified_Ideographs
+blk; CJK_Compat                       ; CJK_Compatibility
+blk; CJK_Compat_Forms                 ; CJK_Compatibility_Forms
+blk; CJK_Compat_Ideographs            ; CJK_Compatibility_Ideographs
+blk; CJK_Compat_Ideographs_Sup        ; CJK_Compatibility_Ideographs_Supplement
+blk; CJK_Ext_A                        ; CJK_Unified_Ideographs_Extension_A
+blk; CJK_Ext_B                        ; CJK_Unified_Ideographs_Extension_B
+blk; CJK_Ext_C                        ; CJK_Unified_Ideographs_Extension_C
+blk; CJK_Ext_D                        ; CJK_Unified_Ideographs_Extension_D
+blk; CJK_Radicals_Sup                 ; CJK_Radicals_Supplement
+blk; CJK_Strokes                      ; CJK_Strokes
+blk; CJK_Symbols                      ; CJK_Symbols_And_Punctuation
+blk; Compat_Jamo                      ; Hangul_Compatibility_Jamo
+blk; Control_Pictures                 ; Control_Pictures
+blk; Coptic                           ; Coptic
+blk; Counting_Rod                     ; Counting_Rod_Numerals
+blk; Cuneiform                        ; Cuneiform
+blk; Cuneiform_Numbers                ; Cuneiform_Numbers_And_Punctuation
+blk; Currency_Symbols                 ; Currency_Symbols
+blk; Cypriot_Syllabary                ; Cypriot_Syllabary
+blk; Cyrillic                         ; Cyrillic
+blk; Cyrillic_Ext_A                   ; Cyrillic_Extended_A
+blk; Cyrillic_Ext_B                   ; Cyrillic_Extended_B
+blk; Cyrillic_Sup                     ; Cyrillic_Supplement              ; Cyrillic_Supplementary
+blk; Deseret                          ; Deseret
+blk; Devanagari                       ; Devanagari
+blk; Devanagari_Ext                   ; Devanagari_Extended
+blk; Diacriticals                     ; Combining_Diacritical_Marks
+blk; Diacriticals_For_Symbols         ; Combining_Diacritical_Marks_For_Symbols; Combining_Marks_For_Symbols
+blk; Diacriticals_Sup                 ; Combining_Diacritical_Marks_Supplement
+blk; Dingbats                         ; Dingbats
+blk; Domino                           ; Domino_Tiles
+blk; Egyptian_Hieroglyphs             ; Egyptian_Hieroglyphs
+blk; Emoticons                        ; Emoticons
+blk; Enclosed_Alphanum                ; Enclosed_Alphanumerics
+blk; Enclosed_Alphanum_Sup            ; Enclosed_Alphanumeric_Supplement
+blk; Enclosed_CJK                     ; Enclosed_CJK_Letters_And_Months
+blk; Enclosed_Ideographic_Sup         ; Enclosed_Ideographic_Supplement
+blk; Ethiopic                         ; Ethiopic
+blk; Ethiopic_Ext                     ; Ethiopic_Extended
+blk; Ethiopic_Ext_A                   ; Ethiopic_Extended_A
+blk; Ethiopic_Sup                     ; Ethiopic_Supplement
+blk; Geometric_Shapes                 ; Geometric_Shapes
+blk; Georgian                         ; Georgian
+blk; Georgian_Sup                     ; Georgian_Supplement
+blk; Glagolitic                       ; Glagolitic
+blk; Gothic                           ; Gothic
+blk; Greek                            ; Greek_And_Coptic
+blk; Greek_Ext                        ; Greek_Extended
+blk; Gujarati                         ; Gujarati
+blk; Gurmukhi                         ; Gurmukhi
+blk; Half_And_Full_Forms              ; Halfwidth_And_Fullwidth_Forms
+blk; Half_Marks                       ; Combining_Half_Marks
+blk; Hangul                           ; Hangul_Syllables
+blk; Hanunoo                          ; Hanunoo
+blk; Hebrew                           ; Hebrew
+blk; High_PU_Surrogates               ; High_Private_Use_Surrogates
+blk; High_Surrogates                  ; High_Surrogates
+blk; Hiragana                         ; Hiragana
+blk; IDC                              ; Ideographic_Description_Characters
+blk; Imperial_Aramaic                 ; Imperial_Aramaic
+blk; Indic_Number_Forms               ; Common_Indic_Number_Forms
+blk; Inscriptional_Pahlavi            ; Inscriptional_Pahlavi
+blk; Inscriptional_Parthian           ; Inscriptional_Parthian
+blk; IPA_Ext                          ; IPA_Extensions
+blk; Jamo                             ; Hangul_Jamo
+blk; Jamo_Ext_A                       ; Hangul_Jamo_Extended_A
+blk; Jamo_Ext_B                       ; Hangul_Jamo_Extended_B
+blk; Javanese                         ; Javanese
+blk; Kaithi                           ; Kaithi
+blk; Kana_Sup                         ; Kana_Supplement
+blk; Kanbun                           ; Kanbun
+blk; Kangxi                           ; Kangxi_Radicals
+blk; Kannada                          ; Kannada
+blk; Katakana                         ; Katakana
+blk; Katakana_Ext                     ; Katakana_Phonetic_Extensions
+blk; Kayah_Li                         ; Kayah_Li
+blk; Kharoshthi                       ; Kharoshthi
+blk; Khmer                            ; Khmer
+blk; Khmer_Symbols                    ; Khmer_Symbols
+blk; Lao                              ; Lao
+blk; Latin_1_Sup                      ; Latin_1_Supplement               ; Latin_1
+blk; Latin_Ext_A                      ; Latin_Extended_A
+blk; Latin_Ext_Additional             ; Latin_Extended_Additional
+blk; Latin_Ext_B                      ; Latin_Extended_B
+blk; Latin_Ext_C                      ; Latin_Extended_C
+blk; Latin_Ext_D                      ; Latin_Extended_D
+blk; Lepcha                           ; Lepcha
+blk; Letterlike_Symbols               ; Letterlike_Symbols
+blk; Limbu                            ; Limbu
+blk; Linear_B_Ideograms               ; Linear_B_Ideograms
+blk; Linear_B_Syllabary               ; Linear_B_Syllabary
+blk; Lisu                             ; Lisu
+blk; Low_Surrogates                   ; Low_Surrogates
+blk; Lycian                           ; Lycian
+blk; Lydian                           ; Lydian
+blk; Mahjong                          ; Mahjong_Tiles
+blk; Malayalam                        ; Malayalam
+blk; Mandaic                          ; Mandaic
+blk; Math_Alphanum                    ; Mathematical_Alphanumeric_Symbols
+blk; Math_Operators                   ; Mathematical_Operators
+blk; Meetei_Mayek                     ; Meetei_Mayek
+blk; Meetei_Mayek_Ext                 ; Meetei_Mayek_Extensions
+blk; Meroitic_Cursive                 ; Meroitic_Cursive
+blk; Meroitic_Hieroglyphs             ; Meroitic_Hieroglyphs
+blk; Miao                             ; Miao
+blk; Misc_Arrows                      ; Miscellaneous_Symbols_And_Arrows
+blk; Misc_Math_Symbols_A              ; Miscellaneous_Mathematical_Symbols_A
+blk; Misc_Math_Symbols_B              ; Miscellaneous_Mathematical_Symbols_B
+blk; Misc_Pictographs                 ; Miscellaneous_Symbols_And_Pictographs
+blk; Misc_Symbols                     ; Miscellaneous_Symbols
+blk; Misc_Technical                   ; Miscellaneous_Technical
+blk; Modifier_Letters                 ; Spacing_Modifier_Letters
+blk; Modifier_Tone_Letters            ; Modifier_Tone_Letters
+blk; Mongolian                        ; Mongolian
+blk; Music                            ; Musical_Symbols
+blk; Myanmar                          ; Myanmar
+blk; Myanmar_Ext_A                    ; Myanmar_Extended_A
+blk; NB                               ; No_Block
+blk; New_Tai_Lue                      ; New_Tai_Lue
+blk; NKo                              ; NKo
+blk; Number_Forms                     ; Number_Forms
+blk; OCR                              ; Optical_Character_Recognition
+blk; Ogham                            ; Ogham
+blk; Ol_Chiki                         ; Ol_Chiki
+blk; Old_Italic                       ; Old_Italic
+blk; Old_Persian                      ; Old_Persian
+blk; Old_South_Arabian                ; Old_South_Arabian
+blk; Old_Turkic                       ; Old_Turkic
+blk; Oriya                            ; Oriya
+blk; Osmanya                          ; Osmanya
+blk; Phags_Pa                         ; Phags_Pa
+blk; Phaistos                         ; Phaistos_Disc
+blk; Phoenician                       ; Phoenician
+blk; Phonetic_Ext                     ; Phonetic_Extensions
+blk; Phonetic_Ext_Sup                 ; Phonetic_Extensions_Supplement
+blk; Playing_Cards                    ; Playing_Cards
+blk; PUA                              ; Private_Use_Area                 ; Private_Use
+blk; Punctuation                      ; General_Punctuation
+blk; Rejang                           ; Rejang
+blk; Rumi                             ; Rumi_Numeral_Symbols
+blk; Runic                            ; Runic
+blk; Samaritan                        ; Samaritan
+blk; Saurashtra                       ; Saurashtra
+blk; Sharada                          ; Sharada
+blk; Shavian                          ; Shavian
+blk; Sinhala                          ; Sinhala
+blk; Small_Forms                      ; Small_Form_Variants
+blk; Sora_Sompeng                     ; Sora_Sompeng
+blk; Specials                         ; Specials
+blk; Sundanese                        ; Sundanese
+blk; Sundanese_Sup                    ; Sundanese_Supplement
+blk; Sup_Arrows_A                     ; Supplemental_Arrows_A
+blk; Sup_Arrows_B                     ; Supplemental_Arrows_B
+blk; Sup_Math_Operators               ; Supplemental_Mathematical_Operators
+blk; Sup_PUA_A                        ; Supplementary_Private_Use_Area_A
+blk; Sup_PUA_B                        ; Supplementary_Private_Use_Area_B
+blk; Sup_Punctuation                  ; Supplemental_Punctuation
+blk; Super_And_Sub                    ; Superscripts_And_Subscripts
+blk; Syloti_Nagri                     ; Syloti_Nagri
+blk; Syriac                           ; Syriac
+blk; Tagalog                          ; Tagalog
+blk; Tagbanwa                         ; Tagbanwa
+blk; Tags                             ; Tags
+blk; Tai_Le                           ; Tai_Le
+blk; Tai_Tham                         ; Tai_Tham
+blk; Tai_Viet                         ; Tai_Viet
+blk; Tai_Xuan_Jing                    ; Tai_Xuan_Jing_Symbols
+blk; Takri                            ; Takri
+blk; Tamil                            ; Tamil
+blk; Telugu                           ; Telugu
+blk; Thaana                           ; Thaana
+blk; Thai                             ; Thai
+blk; Tibetan                          ; Tibetan
+blk; Tifinagh                         ; Tifinagh
+blk; Transport_And_Map                ; Transport_And_Map_Symbols
+blk; UCAS                             ; Unified_Canadian_Aboriginal_Syllabics; Canadian_Syllabics
+blk; UCAS_Ext                         ; Unified_Canadian_Aboriginal_Syllabics_Extended
+blk; Ugaritic                         ; Ugaritic
+blk; Vai                              ; Vai
+blk; Vedic_Ext                        ; Vedic_Extensions
+blk; Vertical_Forms                   ; Vertical_Forms
+blk; VS                               ; Variation_Selectors
+blk; VS_Sup                           ; Variation_Selectors_Supplement
+blk; Yi_Radicals                      ; Yi_Radicals
+blk; Yi_Syllables                     ; Yi_Syllables
+blk; Yijing                           ; Yijing_Hexagram_Symbols
 
 # Canonical_Combining_Class (ccc)
 
-ccc;   0; NR   ; Not_Reordered
-ccc;   1; OV   ; Overlay
-ccc;   7; NK   ; Nukta
-ccc;   8; KV   ; Kana_Voicing
-ccc;   9; VR   ; Virama
-ccc; 200; ATBL ; Attached_Below_Left
-ccc; 202; ATB  ; Attached_Below
-ccc; 214; ATA  ; Attached_Above
-ccc; 216; ATAR ; Attached_Above_Right
-ccc; 218; BL   ; Below_Left
-ccc; 220; B    ; Below
-ccc; 222; BR   ; Below_Right
-ccc; 224; L    ; Left
-ccc; 226; R    ; Right
-ccc; 228; AL   ; Above_Left
-ccc; 230; A    ; Above
-ccc; 232; AR   ; Above_Right
-ccc; 233; DB   ; Double_Below
-ccc; 234; DA   ; Double_Above
-ccc; 240; IS   ; Iota_Subscript
+ccc;   0; NR                         ; Not_Reordered
+ccc;   1; OV                         ; Overlay
+ccc;   7; NK                         ; Nukta
+ccc;   8; KV                         ; Kana_Voicing
+ccc;   9; VR                         ; Virama
+ccc;  10; CCC10                      ; CCC10
+ccc;  11; CCC11                      ; CCC11
+ccc;  12; CCC12                      ; CCC12
+ccc;  13; CCC13                      ; CCC13
+ccc;  14; CCC14                      ; CCC14
+ccc;  15; CCC15                      ; CCC15
+ccc;  16; CCC16                      ; CCC16
+ccc;  17; CCC17                      ; CCC17
+ccc;  18; CCC18                      ; CCC18
+ccc;  19; CCC19                      ; CCC19
+ccc;  20; CCC20                      ; CCC20
+ccc;  21; CCC21                      ; CCC21
+ccc;  22; CCC22                      ; CCC22
+ccc;  23; CCC23                      ; CCC23
+ccc;  24; CCC24                      ; CCC24
+ccc;  25; CCC25                      ; CCC25
+ccc;  26; CCC26                      ; CCC26
+ccc;  27; CCC27                      ; CCC27
+ccc;  28; CCC28                      ; CCC28
+ccc;  29; CCC29                      ; CCC29
+ccc;  30; CCC30                      ; CCC30
+ccc;  31; CCC31                      ; CCC31
+ccc;  32; CCC32                      ; CCC32
+ccc;  33; CCC33                      ; CCC33
+ccc;  34; CCC34                      ; CCC34
+ccc;  35; CCC35                      ; CCC35
+ccc;  36; CCC36                      ; CCC36
+ccc;  84; CCC84                      ; CCC84
+ccc;  91; CCC91                      ; CCC91
+ccc; 103; CCC103                     ; CCC103
+ccc; 107; CCC107                     ; CCC107
+ccc; 118; CCC118                     ; CCC118
+ccc; 122; CCC122                     ; CCC122
+ccc; 129; CCC129                     ; CCC129
+ccc; 130; CCC130                     ; CCC130
+ccc; 132; CCC133                     ; CCC133
+ccc; 200; ATBL                       ; Attached_Below_Left
+ccc; 202; ATB                        ; Attached_Below
+ccc; 214; ATA                        ; Attached_Above
+ccc; 216; ATAR                       ; Attached_Above_Right
+ccc; 218; BL                         ; Below_Left
+ccc; 220; B                          ; Below
+ccc; 222; BR                         ; Below_Right
+ccc; 224; L                          ; Left
+ccc; 226; R                          ; Right
+ccc; 228; AL                         ; Above_Left
+ccc; 230; A                          ; Above
+ccc; 232; AR                         ; Above_Right
+ccc; 233; DB                         ; Double_Below
+ccc; 234; DA                         ; Double_Above
+ccc; 240; IS                         ; Iota_Subscript
 
 # Case_Folding (cf)
 
@@ -359,53 +405,53 @@
 
 # Case_Ignorable (CI)
 
-CI ; N         ; No                               ; F                                ; False
-CI ; Y         ; Yes                              ; T                                ; True
+CI ; N                                ; No                               ; F                                ; False
+CI ; Y                                ; Yes                              ; T                                ; True
 
 # Cased (Cased)
 
-Cased; N       ; No                               ; F                                ; False
-Cased; Y       ; Yes                              ; T                                ; True
+Cased; N                              ; No                               ; F                                ; False
+Cased; Y                              ; Yes                              ; T                                ; True
 
 # Changes_When_Casefolded (CWCF)
 
-CWCF; N        ; No                               ; F                                ; False
-CWCF; Y        ; Yes                              ; T                                ; True
+CWCF; N                               ; No                               ; F                                ; False
+CWCF; Y                               ; Yes                              ; T                                ; True
 
 # Changes_When_Casemapped (CWCM)
 
-CWCM; N        ; No                               ; F                                ; False
-CWCM; Y        ; Yes                              ; T                                ; True
+CWCM; N                               ; No                               ; F                                ; False
+CWCM; Y                               ; Yes                              ; T                                ; True
 
 # Changes_When_Lowercased (CWL)
 
-CWL; N         ; No                               ; F                                ; False
-CWL; Y         ; Yes                              ; T                                ; True
+CWL; N                                ; No                               ; F                                ; False
+CWL; Y                                ; Yes                              ; T                                ; True
 
 # Changes_When_NFKC_Casefolded (CWKCF)
 
-CWKCF; N       ; No                               ; F                                ; False
-CWKCF; Y       ; Yes                              ; T                                ; True
+CWKCF; N                              ; No                               ; F                                ; False
+CWKCF; Y                              ; Yes                              ; T                                ; True
 
 # Changes_When_Titlecased (CWT)
 
-CWT; N         ; No                               ; F                                ; False
-CWT; Y         ; Yes                              ; T                                ; True
+CWT; N                                ; No                               ; F                                ; False
+CWT; Y                                ; Yes                              ; T                                ; True
 
 # Changes_When_Uppercased (CWU)
 
-CWU; N         ; No                               ; F                                ; False
-CWU; Y         ; Yes                              ; T                                ; True
+CWU; N                                ; No                               ; F                                ; False
+CWU; Y                                ; Yes                              ; T                                ; True
 
 # Composition_Exclusion (CE)
 
-CE ; N         ; No                               ; F                                ; False
-CE ; Y         ; Yes                              ; T                                ; True
+CE ; N                                ; No                               ; F                                ; False
+CE ; Y                                ; Yes                              ; T                                ; True
 
 # Dash (Dash)
 
-Dash; N        ; No                               ; F                                ; False
-Dash; Y        ; Yes                              ; T                                ; True
+Dash; N                               ; No                               ; F                                ; False
+Dash; Y                               ; Yes                              ; T                                ; True
 
 # Decomposition_Mapping (dm)
 
@@ -413,73 +459,73 @@
 
 # Decomposition_Type (dt)
 
-dt ; Can       ; Canonical                        ; can
-dt ; Com       ; Compat                           ; com
-dt ; Enc       ; Circle                           ; enc
-dt ; Fin       ; Final                            ; fin
-dt ; Font      ; font
-dt ; Fra       ; Fraction                         ; fra
-dt ; Init      ; Initial                          ; init
-dt ; Iso       ; Isolated                         ; iso
-dt ; Med       ; Medial                           ; med
-dt ; Nar       ; Narrow                           ; nar
-dt ; Nb        ; Nobreak                          ; nb
-dt ; None      ; none
-dt ; Sml       ; Small                            ; sml
-dt ; Sqr       ; Square                           ; sqr
-dt ; Sub       ; sub
-dt ; Sup       ; Super                            ; sup
-dt ; Vert      ; Vertical                         ; vert
-dt ; Wide      ; wide
+dt ; Can                              ; Canonical                        ; can
+dt ; Com                              ; Compat                           ; com
+dt ; Enc                              ; Circle                           ; enc
+dt ; Fin                              ; Final                            ; fin
+dt ; Font                             ; Font                             ; font
+dt ; Fra                              ; Fraction                         ; fra
+dt ; Init                             ; Initial                          ; init
+dt ; Iso                              ; Isolated                         ; iso
+dt ; Med                              ; Medial                           ; med
+dt ; Nar                              ; Narrow                           ; nar
+dt ; Nb                               ; Nobreak                          ; nb
+dt ; None                             ; None                             ; none
+dt ; Sml                              ; Small                            ; sml
+dt ; Sqr                              ; Square                           ; sqr
+dt ; Sub                              ; Sub                              ; sub
+dt ; Sup                              ; Super                            ; sup
+dt ; Vert                             ; Vertical                         ; vert
+dt ; Wide                             ; Wide                             ; wide
 
 # Default_Ignorable_Code_Point (DI)
 
-DI ; N         ; No                               ; F                                ; False
-DI ; Y         ; Yes                              ; T                                ; True
+DI ; N                                ; No                               ; F                                ; False
+DI ; Y                                ; Yes                              ; T                                ; True
 
 # Deprecated (Dep)
 
-Dep; N         ; No                               ; F                                ; False
-Dep; Y         ; Yes                              ; T                                ; True
+Dep; N                                ; No                               ; F                                ; False
+Dep; Y                                ; Yes                              ; T                                ; True
 
 # Diacritic (Dia)
 
-Dia; N         ; No                               ; F                                ; False
-Dia; Y         ; Yes                              ; T                                ; True
+Dia; N                                ; No                               ; F                                ; False
+Dia; Y                                ; Yes                              ; T                                ; True
 
 # East_Asian_Width (ea)
 
-ea ; A         ; Ambiguous
-ea ; F         ; Fullwidth
-ea ; H         ; Halfwidth
-ea ; N         ; Neutral
-ea ; Na        ; Narrow
-ea ; W         ; Wide
+ea ; A                                ; Ambiguous
+ea ; F                                ; Fullwidth
+ea ; H                                ; Halfwidth
+ea ; N                                ; Neutral
+ea ; Na                               ; Narrow
+ea ; W                                ; Wide
 
 # Expands_On_NFC (XO_NFC)
 
-XO_NFC; N      ; No                               ; F                                ; False
-XO_NFC; Y      ; Yes                              ; T                                ; True
+XO_NFC; N                             ; No                               ; F                                ; False
+XO_NFC; Y                             ; Yes                              ; T                                ; True
 
 # Expands_On_NFD (XO_NFD)
 
-XO_NFD; N      ; No                               ; F                                ; False
-XO_NFD; Y      ; Yes                              ; T                                ; True
+XO_NFD; N                             ; No                               ; F                                ; False
+XO_NFD; Y                             ; Yes                              ; T                                ; True
 
 # Expands_On_NFKC (XO_NFKC)
 
-XO_NFKC; N     ; No                               ; F                                ; False
-XO_NFKC; Y     ; Yes                              ; T                                ; True
+XO_NFKC; N                            ; No                               ; F                                ; False
+XO_NFKC; Y                            ; Yes                              ; T                                ; True
 
 # Expands_On_NFKD (XO_NFKD)
 
-XO_NFKD; N     ; No                               ; F                                ; False
-XO_NFKD; Y     ; Yes                              ; T                                ; True
+XO_NFKD; N                            ; No                               ; F                                ; False
+XO_NFKD; Y                            ; Yes                              ; T                                ; True
 
 # Extender (Ext)
 
-Ext; N         ; No                               ; F                                ; False
-Ext; Y         ; Yes                              ; T                                ; True
+Ext; N                                ; No                               ; F                                ; False
+Ext; Y                                ; Yes                              ; T                                ; True
 
 # FC_NFKC_Closure (FC_NFKC)
 
@@ -487,118 +533,118 @@
 
 # Full_Composition_Exclusion (Comp_Ex)
 
-Comp_Ex; N     ; No                               ; F                                ; False
-Comp_Ex; Y     ; Yes                              ; T                                ; True
+Comp_Ex; N                            ; No                               ; F                                ; False
+Comp_Ex; Y                            ; Yes                              ; T                                ; True
 
 # General_Category (gc)
 
-gc ; C         ; Other                            # Cc | Cf | Cn | Co | Cs
-gc ; Cc        ; Control                          ; cntrl
-gc ; Cf        ; Format
-gc ; Cn        ; Unassigned
-gc ; Co        ; Private_Use
-gc ; Cs        ; Surrogate
-gc ; L         ; Letter                           # Ll | Lm | Lo | Lt | Lu
-gc ; LC        ; Cased_Letter                     # Ll | Lt | Lu
-gc ; Ll        ; Lowercase_Letter
-gc ; Lm        ; Modifier_Letter
-gc ; Lo        ; Other_Letter
-gc ; Lt        ; Titlecase_Letter
-gc ; Lu        ; Uppercase_Letter
-gc ; M         ; Mark                             # Mc | Me | Mn
-gc ; Mc        ; Spacing_Mark
-gc ; Me        ; Enclosing_Mark
-gc ; Mn        ; Nonspacing_Mark
-gc ; N         ; Number                           # Nd | Nl | No
-gc ; Nd        ; Decimal_Number                   ; digit
-gc ; Nl        ; Letter_Number
-gc ; No        ; Other_Number
-gc ; P         ; Punctuation                      ; punct                            # Pc | Pd | Pe | Pf | Pi | Po | Ps
-gc ; Pc        ; Connector_Punctuation
-gc ; Pd        ; Dash_Punctuation
-gc ; Pe        ; Close_Punctuation
-gc ; Pf        ; Final_Punctuation
-gc ; Pi        ; Initial_Punctuation
-gc ; Po        ; Other_Punctuation
-gc ; Ps        ; Open_Punctuation
-gc ; S         ; Symbol                           # Sc | Sk | Sm | So
-gc ; Sc        ; Currency_Symbol
-gc ; Sk        ; Modifier_Symbol
-gc ; Sm        ; Math_Symbol
-gc ; So        ; Other_Symbol
-gc ; Z         ; Separator                        # Zl | Zp | Zs
-gc ; Zl        ; Line_Separator
-gc ; Zp        ; Paragraph_Separator
-gc ; Zs        ; Space_Separator
+gc ; C                                ; Other                            # Cc | Cf | Cn | Co | Cs
+gc ; Cc                               ; Control                          ; cntrl
+gc ; Cf                               ; Format
+gc ; Cn                               ; Unassigned
+gc ; Co                               ; Private_Use
+gc ; Cs                               ; Surrogate
+gc ; L                                ; Letter                           # Ll | Lm | Lo | Lt | Lu
+gc ; LC                               ; Cased_Letter                     # Ll | Lt | Lu
+gc ; Ll                               ; Lowercase_Letter
+gc ; Lm                               ; Modifier_Letter
+gc ; Lo                               ; Other_Letter
+gc ; Lt                               ; Titlecase_Letter
+gc ; Lu                               ; Uppercase_Letter
+gc ; M                                ; Mark                             ; Combining_Mark                   # Mc | Me | Mn
+gc ; Mc                               ; Spacing_Mark
+gc ; Me                               ; Enclosing_Mark
+gc ; Mn                               ; Nonspacing_Mark
+gc ; N                                ; Number                           # Nd | Nl | No
+gc ; Nd                               ; Decimal_Number                   ; digit
+gc ; Nl                               ; Letter_Number
+gc ; No                               ; Other_Number
+gc ; P                                ; Punctuation                      ; punct                            # Pc | Pd | Pe | Pf | Pi | Po | Ps
+gc ; Pc                               ; Connector_Punctuation
+gc ; Pd                               ; Dash_Punctuation
+gc ; Pe                               ; Close_Punctuation
+gc ; Pf                               ; Final_Punctuation
+gc ; Pi                               ; Initial_Punctuation
+gc ; Po                               ; Other_Punctuation
+gc ; Ps                               ; Open_Punctuation
+gc ; S                                ; Symbol                           # Sc | Sk | Sm | So
+gc ; Sc                               ; Currency_Symbol
+gc ; Sk                               ; Modifier_Symbol
+gc ; Sm                               ; Math_Symbol
+gc ; So                               ; Other_Symbol
+gc ; Z                                ; Separator                        # Zl | Zp | Zs
+gc ; Zl                               ; Line_Separator
+gc ; Zp                               ; Paragraph_Separator
+gc ; Zs                               ; Space_Separator
 
 # Grapheme_Base (Gr_Base)
 
-Gr_Base; N     ; No                               ; F                                ; False
-Gr_Base; Y     ; Yes                              ; T                                ; True
+Gr_Base; N                            ; No                               ; F                                ; False
+Gr_Base; Y                            ; Yes                              ; T                                ; True
 
 # Grapheme_Cluster_Break (GCB)
 
-GCB; CN        ; Control
-GCB; CR        ; CR
-GCB; EX        ; Extend
-GCB; L         ; L
-GCB; LF        ; LF
-GCB; LV        ; LV
-GCB; LVT       ; LVT
-GCB; PP        ; Prepend
-GCB; SM        ; SpacingMark
-GCB; T         ; T
-GCB; V         ; V
-GCB; XX        ; Other
+GCB; CN                               ; Control
+GCB; CR                               ; CR
+GCB; EX                               ; Extend
+GCB; L                                ; L
+GCB; LF                               ; LF
+GCB; LV                               ; LV
+GCB; LVT                              ; LVT
+GCB; PP                               ; Prepend
+GCB; SM                               ; SpacingMark
+GCB; T                                ; T
+GCB; V                                ; V
+GCB; XX                               ; Other
 
 # Grapheme_Extend (Gr_Ext)
 
-Gr_Ext; N      ; No                               ; F                                ; False
-Gr_Ext; Y      ; Yes                              ; T                                ; True
+Gr_Ext; N                             ; No                               ; F                                ; False
+Gr_Ext; Y                             ; Yes                              ; T                                ; True
 
 # Grapheme_Link (Gr_Link)
 
-Gr_Link; N     ; No                               ; F                                ; False
-Gr_Link; Y     ; Yes                              ; T                                ; True
+Gr_Link; N                            ; No                               ; F                                ; False
+Gr_Link; Y                            ; Yes                              ; T                                ; True
 
 # Hangul_Syllable_Type (hst)
 
-hst; L         ; Leading_Jamo
-hst; LV        ; LV_Syllable
-hst; LVT       ; LVT_Syllable
-hst; NA        ; Not_Applicable
-hst; T         ; Trailing_Jamo
-hst; V         ; Vowel_Jamo
+hst; L                                ; Leading_Jamo
+hst; LV                               ; LV_Syllable
+hst; LVT                              ; LVT_Syllable
+hst; NA                               ; Not_Applicable
+hst; T                                ; Trailing_Jamo
+hst; V                                ; Vowel_Jamo
 
 # Hex_Digit (Hex)
 
-Hex; N         ; No                               ; F                                ; False
-Hex; Y         ; Yes                              ; T                                ; True
+Hex; N                                ; No                               ; F                                ; False
+Hex; Y                                ; Yes                              ; T                                ; True
 
 # Hyphen (Hyphen)
 
-Hyphen; N      ; No                               ; F                                ; False
-Hyphen; Y      ; Yes                              ; T                                ; True
+Hyphen; N                             ; No                               ; F                                ; False
+Hyphen; Y                             ; Yes                              ; T                                ; True
 
 # IDS_Binary_Operator (IDSB)
 
-IDSB; N        ; No                               ; F                                ; False
-IDSB; Y        ; Yes                              ; T                                ; True
+IDSB; N                               ; No                               ; F                                ; False
+IDSB; Y                               ; Yes                              ; T                                ; True
 
 # IDS_Trinary_Operator (IDST)
 
-IDST; N        ; No                               ; F                                ; False
-IDST; Y        ; Yes                              ; T                                ; True
+IDST; N                               ; No                               ; F                                ; False
+IDST; Y                               ; Yes                              ; T                                ; True
 
 # ID_Continue (IDC)
 
-IDC; N         ; No                               ; F                                ; False
-IDC; Y         ; Yes                              ; T                                ; True
+IDC; N                                ; No                               ; F                                ; False
+IDC; Y                                ; Yes                              ; T                                ; True
 
 # ID_Start (IDS)
 
-IDS; N         ; No                               ; F                                ; False
-IDS; Y         ; Yes                              ; T                                ; True
+IDS; N                                ; No                               ; F                                ; False
+IDS; Y                                ; Yes                              ; T                                ; True
 
 # ISO_Comment (isc)
 
@@ -606,188 +652,233 @@
 
 # Ideographic (Ideo)
 
-Ideo; N        ; No                               ; F                                ; False
-Ideo; Y        ; Yes                              ; T                                ; True
+Ideo; N                               ; No                               ; F                                ; False
+Ideo; Y                               ; Yes                              ; T                                ; True
+
+# Indic_Matra_Category (InMC)
+
+InMC; Bottom                          ; Bottom
+InMC; Bottom_And_Right                ; Bottom_And_Right
+InMC; Invisible                       ; Invisible
+InMC; Left                            ; Left
+InMC; Left_And_Right                  ; Left_And_Right
+InMC; NA                              ; NA
+InMC; Overstruck                      ; Overstruck
+InMC; Right                           ; Right
+InMC; Top                             ; Top
+InMC; Top_And_Bottom                  ; Top_And_Bottom
+InMC; Top_And_Bottom_And_Right        ; Top_And_Bottom_And_Right
+InMC; Top_And_Left                    ; Top_And_Left
+InMC; Top_And_Left_And_Right          ; Top_And_Left_And_Right
+InMC; Top_And_Right                   ; Top_And_Right
+InMC; Visual_Order_Left               ; Visual_Order_Left
+
+# Indic_Syllabic_Category (InSC)
+
+InSC; Avagraha                        ; Avagraha
+InSC; Bindu                           ; Bindu
+InSC; Consonant                       ; Consonant
+InSC; Consonant_Dead                  ; Consonant_Dead
+InSC; Consonant_Final                 ; Consonant_Final
+InSC; Consonant_Head_Letter           ; Consonant_Head_Letter
+InSC; Consonant_Medial                ; Consonant_Medial
+InSC; Consonant_Placeholder           ; Consonant_Placeholder
+InSC; Consonant_Repha                 ; Consonant_Repha
+InSC; Consonant_Subjoined             ; Consonant_Subjoined
+InSC; Modifying_Letter                ; Modifying_Letter
+InSC; Nukta                           ; Nukta
+InSC; Other                           ; Other
+InSC; Register_Shifter                ; Register_Shifter
+InSC; Tone_Letter                     ; Tone_Letter
+InSC; Tone_Mark                       ; Tone_Mark
+InSC; Virama                          ; Virama
+InSC; Visarga                         ; Visarga
+InSC; Vowel                           ; Vowel
+InSC; Vowel_Dependent                 ; Vowel_Dependent
+InSC; Vowel_Independent               ; Vowel_Independent
 
 # Jamo_Short_Name (JSN)
 
 # @missing: 0000..10FFFF; Jamo_Short_Name; <none>
-JSN; A         ; A
-JSN; AE        ; AE
-JSN; B         ; B
-JSN; BB        ; BB
-JSN; BS        ; BS
-JSN; C         ; C
-JSN; D         ; D
-JSN; DD        ; DD
-JSN; E         ; E
-JSN; EO        ; EO
-JSN; EU        ; EU
-JSN; G         ; G
-JSN; GG        ; GG
-JSN; GS        ; GS
-JSN; H         ; H
-JSN; I         ; I
-JSN; J         ; J
-JSN; JJ        ; JJ
-JSN; K         ; K
-JSN; L         ; L
-JSN; LB        ; LB
-JSN; LG        ; LG
-JSN; LH        ; LH
-JSN; LM        ; LM
-JSN; LP        ; LP
-JSN; LS        ; LS
-JSN; LT        ; LT
-JSN; M         ; M
-JSN; N         ; N
-JSN; NG        ; NG
-JSN; NH        ; NH
-JSN; NJ        ; NJ
-JSN; O         ; O
-JSN; OE        ; OE
-JSN; P         ; P
-JSN; R         ; R
-JSN; S         ; S
-JSN; SS        ; SS
-JSN; T         ; T
-JSN; U         ; U
-JSN; WA        ; WA
-JSN; WAE       ; WAE
-JSN; WE        ; WE
-JSN; WEO       ; WEO
-JSN; WI        ; WI
-JSN; YA        ; YA
-JSN; YAE       ; YAE
-JSN; YE        ; YE
-JSN; YEO       ; YEO
-JSN; YI        ; YI
-JSN; YO        ; YO
-JSN; YU        ; YU
+JSN; A                                ; A
+JSN; AE                               ; AE
+JSN; B                                ; B
+JSN; BB                               ; BB
+JSN; BS                               ; BS
+JSN; C                                ; C
+JSN; D                                ; D
+JSN; DD                               ; DD
+JSN; E                                ; E
+JSN; EO                               ; EO
+JSN; EU                               ; EU
+JSN; G                                ; G
+JSN; GG                               ; GG
+JSN; GS                               ; GS
+JSN; H                                ; H
+JSN; I                                ; I
+JSN; J                                ; J
+JSN; JJ                               ; JJ
+JSN; K                                ; K
+JSN; L                                ; L
+JSN; LB                               ; LB
+JSN; LG                               ; LG
+JSN; LH                               ; LH
+JSN; LM                               ; LM
+JSN; LP                               ; LP
+JSN; LS                               ; LS
+JSN; LT                               ; LT
+JSN; M                                ; M
+JSN; N                                ; N
+JSN; NG                               ; NG
+JSN; NH                               ; NH
+JSN; NJ                               ; NJ
+JSN; O                                ; O
+JSN; OE                               ; OE
+JSN; P                                ; P
+JSN; R                                ; R
+JSN; S                                ; S
+JSN; SS                               ; SS
+JSN; T                                ; T
+JSN; U                                ; U
+JSN; WA                               ; WA
+JSN; WAE                              ; WAE
+JSN; WE                               ; WE
+JSN; WEO                              ; WEO
+JSN; WI                               ; WI
+JSN; YA                               ; YA
+JSN; YAE                              ; YAE
+JSN; YE                               ; YE
+JSN; YEO                              ; YEO
+JSN; YI                               ; YI
+JSN; YO                               ; YO
+JSN; YU                               ; YU
 
 # Join_Control (Join_C)
 
-Join_C; N      ; No                               ; F                                ; False
-Join_C; Y      ; Yes                              ; T                                ; True
+Join_C; N                             ; No                               ; F                                ; False
+Join_C; Y                             ; Yes                              ; T                                ; True
 
 # Joining_Group (jg)
 
-jg ; n/a       ; Ain
-jg ; n/a       ; Alaph
-jg ; n/a       ; Alef
-jg ; n/a       ; Beh
-jg ; n/a       ; Beth
-jg ; n/a       ; Burushaski_Yeh_Barree
-jg ; n/a       ; Dal
-jg ; n/a       ; Dalath_Rish
-jg ; n/a       ; E
-jg ; n/a       ; Farsi_Yeh
-jg ; n/a       ; Fe
-jg ; n/a       ; Feh
-jg ; n/a       ; Final_Semkath
-jg ; n/a       ; Gaf
-jg ; n/a       ; Gamal
-jg ; n/a       ; Hah
-jg ; n/a       ; He
-jg ; n/a       ; Heh
-jg ; n/a       ; Heh_Goal
-jg ; n/a       ; Heth
-jg ; n/a       ; Kaf
-jg ; n/a       ; Kaph
-jg ; n/a       ; Khaph
-jg ; n/a       ; Knotted_Heh
-jg ; n/a       ; Lam
-jg ; n/a       ; Lamadh
-jg ; n/a       ; Meem
-jg ; n/a       ; Mim
-jg ; n/a       ; No_Joining_Group
-jg ; n/a       ; Noon
-jg ; n/a       ; Nun
-jg ; n/a       ; Nya
-jg ; n/a       ; Pe
-jg ; n/a       ; Qaf
-jg ; n/a       ; Qaph
-jg ; n/a       ; Reh
-jg ; n/a       ; Reversed_Pe
-jg ; n/a       ; Sad
-jg ; n/a       ; Sadhe
-jg ; n/a       ; Seen
-jg ; n/a       ; Semkath
-jg ; n/a       ; Shin
-jg ; n/a       ; Swash_Kaf
-jg ; n/a       ; Syriac_Waw
-jg ; n/a       ; Tah
-jg ; n/a       ; Taw
-jg ; n/a       ; Teh_Marbuta
-jg ; n/a       ; Teh_Marbuta_Goal                 ; Hamza_On_Heh_Goal
-jg ; n/a       ; Teth
-jg ; n/a       ; Waw
-jg ; n/a       ; Yeh
-jg ; n/a       ; Yeh_Barree
-jg ; n/a       ; Yeh_With_Tail
-jg ; n/a       ; Yudh
-jg ; n/a       ; Yudh_He
-jg ; n/a       ; Zain
-jg ; n/a       ; Zhain
+jg ; Ain                              ; Ain
+jg ; Alaph                            ; Alaph
+jg ; Alef                             ; Alef
+jg ; Beh                              ; Beh
+jg ; Beth                             ; Beth
+jg ; Burushaski_Yeh_Barree            ; Burushaski_Yeh_Barree
+jg ; Dal                              ; Dal
+jg ; Dalath_Rish                      ; Dalath_Rish
+jg ; E                                ; E
+jg ; Farsi_Yeh                        ; Farsi_Yeh
+jg ; Fe                               ; Fe
+jg ; Feh                              ; Feh
+jg ; Final_Semkath                    ; Final_Semkath
+jg ; Gaf                              ; Gaf
+jg ; Gamal                            ; Gamal
+jg ; Hah                              ; Hah
+jg ; He                               ; He
+jg ; Heh                              ; Heh
+jg ; Heh_Goal                         ; Heh_Goal
+jg ; Heth                             ; Heth
+jg ; Kaf                              ; Kaf
+jg ; Kaph                             ; Kaph
+jg ; Khaph                            ; Khaph
+jg ; Knotted_Heh                      ; Knotted_Heh
+jg ; Lam                              ; Lam
+jg ; Lamadh                           ; Lamadh
+jg ; Meem                             ; Meem
+jg ; Mim                              ; Mim
+jg ; No_Joining_Group                 ; No_Joining_Group
+jg ; Noon                             ; Noon
+jg ; Nun                              ; Nun
+jg ; Nya                              ; Nya
+jg ; Pe                               ; Pe
+jg ; Qaf                              ; Qaf
+jg ; Qaph                             ; Qaph
+jg ; Reh                              ; Reh
+jg ; Reversed_Pe                      ; Reversed_Pe
+jg ; Rohingya_Yeh                     ; Rohingya_Yeh
+jg ; Sad                              ; Sad
+jg ; Sadhe                            ; Sadhe
+jg ; Seen                             ; Seen
+jg ; Semkath                          ; Semkath
+jg ; Shin                             ; Shin
+jg ; Swash_Kaf                        ; Swash_Kaf
+jg ; Syriac_Waw                       ; Syriac_Waw
+jg ; Tah                              ; Tah
+jg ; Taw                              ; Taw
+jg ; Teh_Marbuta                      ; Teh_Marbuta
+jg ; Teh_Marbuta_Goal                 ; Hamza_On_Heh_Goal
+jg ; Teth                             ; Teth
+jg ; Waw                              ; Waw
+jg ; Yeh                              ; Yeh
+jg ; Yeh_Barree                       ; Yeh_Barree
+jg ; Yeh_With_Tail                    ; Yeh_With_Tail
+jg ; Yudh                             ; Yudh
+jg ; Yudh_He                          ; Yudh_He
+jg ; Zain                             ; Zain
+jg ; Zhain                            ; Zhain
 
 # Joining_Type (jt)
 
-jt ; C         ; Join_Causing
-jt ; D         ; Dual_Joining
-jt ; L         ; Left_Joining
-jt ; R         ; Right_Joining
-jt ; T         ; Transparent
-jt ; U         ; Non_Joining
+jt ; C                                ; Join_Causing
+jt ; D                                ; Dual_Joining
+jt ; L                                ; Left_Joining
+jt ; R                                ; Right_Joining
+jt ; T                                ; Transparent
+jt ; U                                ; Non_Joining
 
 # Line_Break (lb)
 
-lb ; AI        ; Ambiguous
-lb ; AL        ; Alphabetic
-lb ; B2        ; Break_Both
-lb ; BA        ; Break_After
-lb ; BB        ; Break_Before
-lb ; BK        ; Mandatory_Break
-lb ; CB        ; Contingent_Break
-lb ; CL        ; Close_Punctuation
-lb ; CM        ; Combining_Mark
-lb ; CP        ; Close_Parenthesis
-lb ; CR        ; Carriage_Return
-lb ; EX        ; Exclamation
-lb ; GL        ; Glue
-lb ; H2        ; H2
-lb ; H3        ; H3
-lb ; HY        ; Hyphen
-lb ; ID        ; Ideographic
-lb ; IN        ; Inseparable                      ; Inseperable
-lb ; IS        ; Infix_Numeric
-lb ; JL        ; JL
-lb ; JT        ; JT
-lb ; JV        ; JV
-lb ; LF        ; Line_Feed
-lb ; NL        ; Next_Line
-lb ; NS        ; Nonstarter
-lb ; NU        ; Numeric
-lb ; OP        ; Open_Punctuation
-lb ; PO        ; Postfix_Numeric
-lb ; PR        ; Prefix_Numeric
-lb ; QU        ; Quotation
-lb ; SA        ; Complex_Context
-lb ; SG        ; Surrogate
-lb ; SP        ; Space
-lb ; SY        ; Break_Symbols
-lb ; WJ        ; Word_Joiner
-lb ; XX        ; Unknown
-lb ; ZW        ; ZWSpace
+lb ; AI                               ; Ambiguous
+lb ; AL                               ; Alphabetic
+lb ; B2                               ; Break_Both
+lb ; BA                               ; Break_After
+lb ; BB                               ; Break_Before
+lb ; BK                               ; Mandatory_Break
+lb ; CB                               ; Contingent_Break
+lb ; CJ                               ; Conditional_Japanese_Starter
+lb ; CL                               ; Close_Punctuation
+lb ; CM                               ; Combining_Mark
+lb ; CP                               ; Close_Parenthesis
+lb ; CR                               ; Carriage_Return
+lb ; EX                               ; Exclamation
+lb ; GL                               ; Glue
+lb ; H2                               ; H2
+lb ; H3                               ; H3
+lb ; HL                               ; Hebrew_Letter
+lb ; HY                               ; Hyphen
+lb ; ID                               ; Ideographic
+lb ; IN                               ; Inseparable                      ; Inseperable
+lb ; IS                               ; Infix_Numeric
+lb ; JL                               ; JL
+lb ; JT                               ; JT
+lb ; JV                               ; JV
+lb ; LF                               ; Line_Feed
+lb ; NL                               ; Next_Line
+lb ; NS                               ; Nonstarter
+lb ; NU                               ; Numeric
+lb ; OP                               ; Open_Punctuation
+lb ; PO                               ; Postfix_Numeric
+lb ; PR                               ; Prefix_Numeric
+lb ; QU                               ; Quotation
+lb ; SA                               ; Complex_Context
+lb ; SG                               ; Surrogate
+lb ; SP                               ; Space
+lb ; SY                               ; Break_Symbols
+lb ; WJ                               ; Word_Joiner
+lb ; XX                               ; Unknown
+lb ; ZW                               ; ZWSpace
 
 # Logical_Order_Exception (LOE)
 
-LOE; N         ; No                               ; F                                ; False
-LOE; Y         ; Yes                              ; T                                ; True
+LOE; N                                ; No                               ; F                                ; False
+LOE; Y                                ; Yes                              ; T                                ; True
 
 # Lowercase (Lower)
 
-Lower; N       ; No                               ; F                                ; False
-Lower; Y       ; Yes                              ; T                                ; True
+Lower; N                              ; No                               ; F                                ; False
+Lower; Y                              ; Yes                              ; T                                ; True
 
 # Lowercase_Mapping (lc)
 
@@ -795,19 +886,19 @@
 
 # Math (Math)
 
-Math; N        ; No                               ; F                                ; False
-Math; Y        ; Yes                              ; T                                ; True
+Math; N                               ; No                               ; F                                ; False
+Math; Y                               ; Yes                              ; T                                ; True
 
 # NFC_Quick_Check (NFC_QC)
 
-NFC_QC; M      ; Maybe
-NFC_QC; N      ; No
-NFC_QC; Y      ; Yes
+NFC_QC; M                             ; Maybe
+NFC_QC; N                             ; No
+NFC_QC; Y                             ; Yes
 
 # NFD_Quick_Check (NFD_QC)
 
-NFD_QC; N      ; No
-NFD_QC; Y      ; Yes
+NFD_QC; N                             ; No
+NFD_QC; Y                             ; Yes
 
 # NFKC_Casefold (NFKC_CF)
 
@@ -815,14 +906,14 @@
 
 # NFKC_Quick_Check (NFKC_QC)
 
-NFKC_QC; M     ; Maybe
-NFKC_QC; N     ; No
-NFKC_QC; Y     ; Yes
+NFKC_QC; M                            ; Maybe
+NFKC_QC; N                            ; No
+NFKC_QC; Y                            ; Yes
 
 # NFKD_Quick_Check (NFKD_QC)
 
-NFKD_QC; N     ; No
-NFKD_QC; Y     ; Yes
+NFKD_QC; N                            ; No
+NFKD_QC; Y                            ; Yes
 
 # Name (na)
 
@@ -834,15 +925,15 @@
 
 # Noncharacter_Code_Point (NChar)
 
-NChar; N       ; No                               ; F                                ; False
-NChar; Y       ; Yes                              ; T                                ; True
+NChar; N                              ; No                               ; F                                ; False
+NChar; Y                              ; Yes                              ; T                                ; True
 
 # Numeric_Type (nt)
 
-nt ; De        ; Decimal
-nt ; Di        ; Digit
-nt ; None      ; None
-nt ; Nu        ; Numeric
+nt ; De                               ; Decimal
+nt ; Di                               ; Digit
+nt ; None                             ; None
+nt ; Nu                               ; Numeric
 
 # Numeric_Value (nv)
 
@@ -850,186 +941,197 @@
 
 # Other_Alphabetic (OAlpha)
 
-OAlpha; N      ; No                               ; F                                ; False
-OAlpha; Y      ; Yes                              ; T                                ; True
+OAlpha; N                             ; No                               ; F                                ; False
+OAlpha; Y                             ; Yes                              ; T                                ; True
 
 # Other_Default_Ignorable_Code_Point (ODI)
 
-ODI; N         ; No                               ; F                                ; False
-ODI; Y         ; Yes                              ; T                                ; True
+ODI; N                                ; No                               ; F                                ; False
+ODI; Y                                ; Yes                              ; T                                ; True
 
 # Other_Grapheme_Extend (OGr_Ext)
 
-OGr_Ext; N     ; No                               ; F                                ; False
-OGr_Ext; Y     ; Yes                              ; T                                ; True
+OGr_Ext; N                            ; No                               ; F                                ; False
+OGr_Ext; Y                            ; Yes                              ; T                                ; True
 
 # Other_ID_Continue (OIDC)
 
-OIDC; N        ; No                               ; F                                ; False
-OIDC; Y        ; Yes                              ; T                                ; True
+OIDC; N                               ; No                               ; F                                ; False
+OIDC; Y                               ; Yes                              ; T                                ; True
 
 # Other_ID_Start (OIDS)
 
-OIDS; N        ; No                               ; F                                ; False
-OIDS; Y        ; Yes                              ; T                                ; True
+OIDS; N                               ; No                               ; F                                ; False
+OIDS; Y                               ; Yes                              ; T                                ; True
 
 # Other_Lowercase (OLower)
 
-OLower; N      ; No                               ; F                                ; False
-OLower; Y      ; Yes                              ; T                                ; True
+OLower; N                             ; No                               ; F                                ; False
+OLower; Y                             ; Yes                              ; T                                ; True
 
 # Other_Math (OMath)
 
-OMath; N       ; No                               ; F                                ; False
-OMath; Y       ; Yes                              ; T                                ; True
+OMath; N                              ; No                               ; F                                ; False
+OMath; Y                              ; Yes                              ; T                                ; True
 
 # Other_Uppercase (OUpper)
 
-OUpper; N      ; No                               ; F                                ; False
-OUpper; Y      ; Yes                              ; T                                ; True
+OUpper; N                             ; No                               ; F                                ; False
+OUpper; Y                             ; Yes                              ; T                                ; True
 
 # Pattern_Syntax (Pat_Syn)
 
-Pat_Syn; N     ; No                               ; F                                ; False
-Pat_Syn; Y     ; Yes                              ; T                                ; True
+Pat_Syn; N                            ; No                               ; F                                ; False
+Pat_Syn; Y                            ; Yes                              ; T                                ; True
 
 # Pattern_White_Space (Pat_WS)
 
-Pat_WS; N      ; No                               ; F                                ; False
-Pat_WS; Y      ; Yes                              ; T                                ; True
+Pat_WS; N                             ; No                               ; F                                ; False
+Pat_WS; Y                             ; Yes                              ; T                                ; True
 
 # Quotation_Mark (QMark)
 
-QMark; N       ; No                               ; F                                ; False
-QMark; Y       ; Yes                              ; T                                ; True
+QMark; N                              ; No                               ; F                                ; False
+QMark; Y                              ; Yes                              ; T                                ; True
 
 # Radical (Radical)
 
-Radical; N     ; No                               ; F                                ; False
-Radical; Y     ; Yes                              ; T                                ; True
+Radical; N                            ; No                               ; F                                ; False
+Radical; Y                            ; Yes                              ; T                                ; True
 
 # STerm (STerm)
 
-STerm; N       ; No                               ; F                                ; False
-STerm; Y       ; Yes                              ; T                                ; True
+STerm; N                              ; No                               ; F                                ; False
+STerm; Y                              ; Yes                              ; T                                ; True
 
 # Script (sc)
 
-sc ; Arab      ; Arabic
-sc ; Armi      ; Imperial_Aramaic
-sc ; Armn      ; Armenian
-sc ; Avst      ; Avestan
-sc ; Bali      ; Balinese
-sc ; Bamu      ; Bamum
-sc ; Batk      ; Batak
-sc ; Beng      ; Bengali
-sc ; Bopo      ; Bopomofo
-sc ; Brah      ; Brahmi
-sc ; Brai      ; Braille
-sc ; Bugi      ; Buginese
-sc ; Buhd      ; Buhid
-sc ; Cans      ; Canadian_Aboriginal
-sc ; Cari      ; Carian
-sc ; Cham      ; Cham
-sc ; Cher      ; Cherokee
-sc ; Copt      ; Coptic                           ; Qaac
-sc ; Cprt      ; Cypriot
-sc ; Cyrl      ; Cyrillic
-sc ; Deva      ; Devanagari
-sc ; Dsrt      ; Deseret
-sc ; Egyp      ; Egyptian_Hieroglyphs
-sc ; Ethi      ; Ethiopic
-sc ; Geor      ; Georgian
-sc ; Glag      ; Glagolitic
-sc ; Goth      ; Gothic
-sc ; Grek      ; Greek
-sc ; Gujr      ; Gujarati
-sc ; Guru      ; Gurmukhi
-sc ; Hang      ; Hangul
-sc ; Hani      ; Han
-sc ; Hano      ; Hanunoo
-sc ; Hebr      ; Hebrew
-sc ; Hira      ; Hiragana
-sc ; Hrkt      ; Katakana_Or_Hiragana
-sc ; Ital      ; Old_Italic
-sc ; Java      ; Javanese
-sc ; Kali      ; Kayah_Li
-sc ; Kana      ; Katakana
-sc ; Khar      ; Kharoshthi
-sc ; Khmr      ; Khmer
-sc ; Knda      ; Kannada
-sc ; Kthi      ; Kaithi
-sc ; Lana      ; Tai_Tham
-sc ; Laoo      ; Lao
-sc ; Latn      ; Latin
-sc ; Lepc      ; Lepcha
-sc ; Limb      ; Limbu
-sc ; Linb      ; Linear_B
-sc ; Lisu      ; Lisu
-sc ; Lyci      ; Lycian
-sc ; Lydi      ; Lydian
-sc ; Mand      ; Mandaic
-sc ; Mlym      ; Malayalam
-sc ; Mong      ; Mongolian
-sc ; Mtei      ; Meetei_Mayek
-sc ; Mymr      ; Myanmar
-sc ; Nkoo      ; Nko
-sc ; Ogam      ; Ogham
-sc ; Olck      ; Ol_Chiki
-sc ; Orkh      ; Old_Turkic
-sc ; Orya      ; Oriya
-sc ; Osma      ; Osmanya
-sc ; Phag      ; Phags_Pa
-sc ; Phli      ; Inscriptional_Pahlavi
-sc ; Phnx      ; Phoenician
-sc ; Prti      ; Inscriptional_Parthian
-sc ; Rjng      ; Rejang
-sc ; Runr      ; Runic
-sc ; Samr      ; Samaritan
-sc ; Sarb      ; Old_South_Arabian
-sc ; Saur      ; Saurashtra
-sc ; Shaw      ; Shavian
-sc ; Sinh      ; Sinhala
-sc ; Sund      ; Sundanese
-sc ; Sylo      ; Syloti_Nagri
-sc ; Syrc      ; Syriac
-sc ; Tagb      ; Tagbanwa
-sc ; Tale      ; Tai_Le
-sc ; Talu      ; New_Tai_Lue
-sc ; Taml      ; Tamil
-sc ; Tavt      ; Tai_Viet
-sc ; Telu      ; Telugu
-sc ; Tfng      ; Tifinagh
-sc ; Tglg      ; Tagalog
-sc ; Thaa      ; Thaana
-sc ; Thai      ; Thai
-sc ; Tibt      ; Tibetan
-sc ; Ugar      ; Ugaritic
-sc ; Vaii      ; Vai
-sc ; Xpeo      ; Old_Persian
-sc ; Xsux      ; Cuneiform
-sc ; Yiii      ; Yi
-sc ; Zinh      ; Inherited                        ; Qaai
-sc ; Zyyy      ; Common
-sc ; Zzzz      ; Unknown
+sc ; Arab                             ; Arabic
+sc ; Armi                             ; Imperial_Aramaic
+sc ; Armn                             ; Armenian
+sc ; Avst                             ; Avestan
+sc ; Bali                             ; Balinese
+sc ; Bamu                             ; Bamum
+sc ; Batk                             ; Batak
+sc ; Beng                             ; Bengali
+sc ; Bopo                             ; Bopomofo
+sc ; Brah                             ; Brahmi
+sc ; Brai                             ; Braille
+sc ; Bugi                             ; Buginese
+sc ; Buhd                             ; Buhid
+sc ; Cakm                             ; Chakma
+sc ; Cans                             ; Canadian_Aboriginal
+sc ; Cari                             ; Carian
+sc ; Cham                             ; Cham
+sc ; Cher                             ; Cherokee
+sc ; Copt                             ; Coptic                           ; Qaac
+sc ; Cprt                             ; Cypriot
+sc ; Cyrl                             ; Cyrillic
+sc ; Deva                             ; Devanagari
+sc ; Dsrt                             ; Deseret
+sc ; Egyp                             ; Egyptian_Hieroglyphs
+sc ; Ethi                             ; Ethiopic
+sc ; Geor                             ; Georgian
+sc ; Glag                             ; Glagolitic
+sc ; Goth                             ; Gothic
+sc ; Grek                             ; Greek
+sc ; Gujr                             ; Gujarati
+sc ; Guru                             ; Gurmukhi
+sc ; Hang                             ; Hangul
+sc ; Hani                             ; Han
+sc ; Hano                             ; Hanunoo
+sc ; Hebr                             ; Hebrew
+sc ; Hira                             ; Hiragana
+sc ; Hrkt                             ; Katakana_Or_Hiragana
+sc ; Ital                             ; Old_Italic
+sc ; Java                             ; Javanese
+sc ; Kali                             ; Kayah_Li
+sc ; Kana                             ; Katakana
+sc ; Khar                             ; Kharoshthi
+sc ; Khmr                             ; Khmer
+sc ; Knda                             ; Kannada
+sc ; Kthi                             ; Kaithi
+sc ; Lana                             ; Tai_Tham
+sc ; Laoo                             ; Lao
+sc ; Latn                             ; Latin
+sc ; Lepc                             ; Lepcha
+sc ; Limb                             ; Limbu
+sc ; Linb                             ; Linear_B
+sc ; Lisu                             ; Lisu
+sc ; Lyci                             ; Lycian
+sc ; Lydi                             ; Lydian
+sc ; Mand                             ; Mandaic
+sc ; Merc                             ; Meroitic_Cursive
+sc ; Mero                             ; Meroitic_Hieroglyphs
+sc ; Mlym                             ; Malayalam
+sc ; Mong                             ; Mongolian
+sc ; Mtei                             ; Meetei_Mayek
+sc ; Mymr                             ; Myanmar
+sc ; Nkoo                             ; Nko
+sc ; Ogam                             ; Ogham
+sc ; Olck                             ; Ol_Chiki
+sc ; Orkh                             ; Old_Turkic
+sc ; Orya                             ; Oriya
+sc ; Osma                             ; Osmanya
+sc ; Phag                             ; Phags_Pa
+sc ; Phli                             ; Inscriptional_Pahlavi
+sc ; Phnx                             ; Phoenician
+sc ; Plrd                             ; Miao
+sc ; Prti                             ; Inscriptional_Parthian
+sc ; Rjng                             ; Rejang
+sc ; Runr                             ; Runic
+sc ; Samr                             ; Samaritan
+sc ; Sarb                             ; Old_South_Arabian
+sc ; Saur                             ; Saurashtra
+sc ; Shaw                             ; Shavian
+sc ; Shrd                             ; Sharada
+sc ; Sinh                             ; Sinhala
+sc ; Sora                             ; Sora_Sompeng
+sc ; Sund                             ; Sundanese
+sc ; Sylo                             ; Syloti_Nagri
+sc ; Syrc                             ; Syriac
+sc ; Tagb                             ; Tagbanwa
+sc ; Takr                             ; Takri
+sc ; Tale                             ; Tai_Le
+sc ; Talu                             ; New_Tai_Lue
+sc ; Taml                             ; Tamil
+sc ; Tavt                             ; Tai_Viet
+sc ; Telu                             ; Telugu
+sc ; Tfng                             ; Tifinagh
+sc ; Tglg                             ; Tagalog
+sc ; Thaa                             ; Thaana
+sc ; Thai                             ; Thai
+sc ; Tibt                             ; Tibetan
+sc ; Ugar                             ; Ugaritic
+sc ; Vaii                             ; Vai
+sc ; Xpeo                             ; Old_Persian
+sc ; Xsux                             ; Cuneiform
+sc ; Yiii                             ; Yi
+sc ; Zinh                             ; Inherited                        ; Qaai
+sc ; Zyyy                             ; Common
+sc ; Zzzz                             ; Unknown
+
+# Script_Extensions (scx)
+
+# @missing: 0000..10FFFF; Script_Extensions; <script>
 
 # Sentence_Break (SB)
 
-SB ; AT        ; ATerm
-SB ; CL        ; Close
-SB ; CR        ; CR
-SB ; EX        ; Extend
-SB ; FO        ; Format
-SB ; LE        ; OLetter
-SB ; LF        ; LF
-SB ; LO        ; Lower
-SB ; NU        ; Numeric
-SB ; SC        ; SContinue
-SB ; SE        ; Sep
-SB ; SP        ; Sp
-SB ; ST        ; STerm
-SB ; UP        ; Upper
-SB ; XX        ; Other
+SB ; AT                               ; ATerm
+SB ; CL                               ; Close
+SB ; CR                               ; CR
+SB ; EX                               ; Extend
+SB ; FO                               ; Format
+SB ; LE                               ; OLetter
+SB ; LF                               ; LF
+SB ; LO                               ; Lower
+SB ; NU                               ; Numeric
+SB ; SC                               ; SContinue
+SB ; SE                               ; Sep
+SB ; SP                               ; Sp
+SB ; ST                               ; STerm
+SB ; UP                               ; Upper
+SB ; XX                               ; Other
 
 # Simple_Case_Folding (scf)
 
@@ -1049,13 +1151,13 @@
 
 # Soft_Dotted (SD)
 
-SD ; N         ; No                               ; F                                ; False
-SD ; Y         ; Yes                              ; T                                ; True
+SD ; N                                ; No                               ; F                                ; False
+SD ; Y                                ; Yes                              ; T                                ; True
 
 # Terminal_Punctuation (Term)
 
-Term; N        ; No                               ; F                                ; False
-Term; Y        ; Yes                              ; T                                ; True
+Term; N                               ; No                               ; F                                ; False
+Term; Y                               ; Yes                              ; T                                ; True
 
 # Titlecase_Mapping (tc)
 
@@ -1067,13 +1169,13 @@
 
 # Unified_Ideograph (UIdeo)
 
-UIdeo; N       ; No                               ; F                                ; False
-UIdeo; Y       ; Yes                              ; T                                ; True
+UIdeo; N                              ; No                               ; F                                ; False
+UIdeo; Y                              ; Yes                              ; T                                ; True
 
 # Uppercase (Upper)
 
-Upper; N       ; No                               ; F                                ; False
-Upper; Y       ; Yes                              ; T                                ; True
+Upper; N                              ; No                               ; F                                ; False
+Upper; Y                              ; Yes                              ; T                                ; True
 
 # Uppercase_Mapping (uc)
 
@@ -1081,39 +1183,39 @@
 
 # Variation_Selector (VS)
 
-VS ; N         ; No                               ; F                                ; False
-VS ; Y         ; Yes                              ; T                                ; True
+VS ; N                                ; No                               ; F                                ; False
+VS ; Y                                ; Yes                              ; T                                ; True
 
 # White_Space (WSpace)
 
-WSpace; N      ; No                               ; F                                ; False
-WSpace; Y      ; Yes                              ; T                                ; True
+WSpace; N                             ; No                               ; F                                ; False
+WSpace; Y                             ; Yes                              ; T                                ; True
 
 # Word_Break (WB)
 
-WB ; CR        ; CR
-WB ; EX        ; ExtendNumLet
-WB ; Extend    ; Extend
-WB ; FO        ; Format
-WB ; KA        ; Katakana
-WB ; LE        ; ALetter
-WB ; LF        ; LF
-WB ; MB        ; MidNumLet
-WB ; ML        ; MidLetter
-WB ; MN        ; MidNum
-WB ; NL        ; Newline
-WB ; NU        ; Numeric
-WB ; XX        ; Other
+WB ; CR                               ; CR
+WB ; EX                               ; ExtendNumLet
+WB ; Extend                           ; Extend
+WB ; FO                               ; Format
+WB ; KA                               ; Katakana
+WB ; LE                               ; ALetter
+WB ; LF                               ; LF
+WB ; MB                               ; MidNumLet
+WB ; ML                               ; MidLetter
+WB ; MN                               ; MidNum
+WB ; NL                               ; Newline
+WB ; NU                               ; Numeric
+WB ; XX                               ; Other
 
 # XID_Continue (XIDC)
 
-XIDC; N        ; No                               ; F                                ; False
-XIDC; Y        ; Yes                              ; T                                ; True
+XIDC; N                               ; No                               ; F                                ; False
+XIDC; Y                               ; Yes                              ; T                                ; True
 
 # XID_Start (XIDS)
 
-XIDS; N        ; No                               ; F                                ; False
-XIDS; Y        ; Yes                              ; T                                ; True
+XIDS; N                               ; No                               ; F                                ; False
+XIDS; Y                               ; Yes                              ; T                                ; True
 
 # cjkAccountingNumeric (cjkAccountingNumeric)
 
--- a/test/java/lang/Character/Scripts.txt	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/lang/Character/Scripts.txt	Tue May 08 07:34:53 2012 -0700
@@ -1,8 +1,8 @@
-# Scripts-6.0.0.txt
-# Date: 2010-08-19, 00:48:47 GMT [MD]
+# Scripts-6.1.0.txt
+# Date: 2011-11-27, 05:10:50 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2010 Unicode, Inc.
+# Copyright (c) 1991-2011 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 
@@ -47,7 +47,8 @@
 00A0          ; Common # Zs       NO-BREAK SPACE
 00A1          ; Common # Po       INVERTED EXCLAMATION MARK
 00A2..00A5    ; Common # Sc   [4] CENT SIGN..YEN SIGN
-00A6..00A7    ; Common # So   [2] BROKEN BAR..SECTION SIGN
+00A6          ; Common # So       BROKEN BAR
+00A7          ; Common # Po       SECTION SIGN
 00A8          ; Common # Sk       DIAERESIS
 00A9          ; Common # So       COPYRIGHT SIGN
 00AB          ; Common # Pi       LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
@@ -60,8 +61,7 @@
 00B2..00B3    ; Common # No   [2] SUPERSCRIPT TWO..SUPERSCRIPT THREE
 00B4          ; Common # Sk       ACUTE ACCENT
 00B5          ; Common # L&       MICRO SIGN
-00B6          ; Common # So       PILCROW SIGN
-00B7          ; Common # Po       MIDDLE DOT
+00B6..00B7    ; Common # Po   [2] PILCROW SIGN..MIDDLE DOT
 00B8          ; Common # Sk       CEDILLA
 00B9          ; Common # No       SUPERSCRIPT ONE
 00BB          ; Common # Pf       RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
@@ -90,7 +90,6 @@
 0660..0669    ; Common # Nd  [10] ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE
 06DD          ; Common # Cf       ARABIC END OF AYAH
 0964..0965    ; Common # Po   [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
-0970          ; Common # Po       DEVANAGARI ABBREVIATION SIGN
 0E3F          ; Common # Sc       THAI CURRENCY SYMBOL BAHT
 0FD5..0FD8    ; Common # So   [4] RIGHT-FACING SVASTI SIGN..LEFT-FACING SVASTI SIGN WITH DOTS
 10FB          ; Common # Po       GEORGIAN PARAGRAPH SEPARATOR
@@ -102,7 +101,8 @@
 1CE1          ; Common # Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
 1CE9..1CEC    ; Common # Lo   [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL
 1CEE..1CF1    ; Common # Lo   [4] VEDIC SIGN HEXIFORM LONG ANUSVARA..VEDIC SIGN ANUSVARA UBHAYATO MUKHA
-1CF2          ; Common # Mc       VEDIC SIGN ARDHAVISARGA
+1CF2..1CF3    ; Common # Mc   [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
+1CF5..1CF6    ; Common # Lo   [2] VEDIC SIGN JIHVAMULIYA..VEDIC SIGN UPADHMANIYA
 2000..200A    ; Common # Zs  [11] EN QUAD..HAIR SPACE
 200B          ; Common # Cf       ZERO WIDTH SPACE
 200E..200F    ; Common # Cf   [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
@@ -247,9 +247,7 @@
 27C0..27C4    ; Common # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
 27C5          ; Common # Ps       LEFT S-SHAPED BAG DELIMITER
 27C6          ; Common # Pe       RIGHT S-SHAPED BAG DELIMITER
-27C7..27CA    ; Common # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
-27CC          ; Common # Sm       LONG DIVISION
-27CE..27E5    ; Common # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
+27C7..27E5    ; Common # Sm  [31] OR WITH DOT INSIDE..WHITE SQUARE WITH RIGHTWARDS TICK
 27E6          ; Common # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
 27E7          ; Common # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
 27E8          ; Common # Ps       MATHEMATICAL LEFT ANGLE BRACKET
@@ -329,7 +327,8 @@
 2E29          ; Common # Pe       RIGHT DOUBLE PARENTHESIS
 2E2A..2E2E    ; Common # Po   [5] TWO DOTS OVER ONE DOT PUNCTUATION..REVERSED QUESTION MARK
 2E2F          ; Common # Lm       VERTICAL TILDE
-2E30..2E31    ; Common # Po   [2] RING POINT..WORD SEPARATOR MIDDLE DOT
+2E30..2E39    ; Common # Po  [10] RING POINT..TOP HALF SECTION SIGN
+2E3A..2E3B    ; Common # Pd   [2] TWO-EM DASH..THREE-EM DASH
 2FF0..2FFB    ; Common # So  [12] IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
 3000          ; Common # Zs       IDEOGRAPHIC SPACE
 3001..3003    ; Common # Po   [3] IDEOGRAPHIC COMMA..DITTO MARK
@@ -373,7 +372,9 @@
 3196..319F    ; Common # So  [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK
 31C0..31E3    ; Common # So  [36] CJK STROKE T..CJK STROKE Q
 3220..3229    ; Common # No  [10] PARENTHESIZED IDEOGRAPH ONE..PARENTHESIZED IDEOGRAPH TEN
-322A..3250    ; Common # So  [39] PARENTHESIZED IDEOGRAPH MOON..PARTNERSHIP SIGN
+322A..3247    ; Common # So  [30] PARENTHESIZED IDEOGRAPH MOON..CIRCLED IDEOGRAPH KOTO
+3248..324F    ; Common # No   [8] CIRCLED NUMBER TEN ON BLACK SQUARE..CIRCLED NUMBER EIGHTY ON BLACK SQUARE
+3250          ; Common # So       PARTNERSHIP SIGN
 3251..325F    ; Common # No  [15] CIRCLED NUMBER TWENTY ONE..CIRCLED NUMBER THIRTY FIVE
 327F          ; Common # So       KOREAN STANDARD SYMBOL
 3280..3289    ; Common # No  [10] CIRCLED IDEOGRAPH ONE..CIRCLED IDEOGRAPH TEN
@@ -481,8 +482,7 @@
 FFED..FFEE    ; Common # So   [2] HALFWIDTH BLACK SQUARE..HALFWIDTH WHITE CIRCLE
 FFF9..FFFB    ; Common # Cf   [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
 FFFC..FFFD    ; Common # So   [2] OBJECT REPLACEMENT CHARACTER..REPLACEMENT CHARACTER
-10100..10101  ; Common # Po   [2] AEGEAN WORD SEPARATOR LINE..AEGEAN WORD SEPARATOR DOT
-10102         ; Common # So       AEGEAN CHECK MARK
+10100..10102  ; Common # Po   [3] AEGEAN WORD SEPARATOR LINE..AEGEAN CHECK MARK
 10107..10133  ; Common # No  [45] AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND
 10137..1013F  ; Common # So   [9] AEGEAN WEIGHT BASE UNIT..AEGEAN MEASURE THIRD SUBUNIT
 10190..1019B  ; Common # So  [12] ROMAN SEXTANS SIGN..ROMAN CENTURIAL SIGN
@@ -548,7 +548,7 @@
 1F0D1..1F0DF  ; Common # So  [15] PLAYING CARD ACE OF CLUBS..PLAYING CARD WHITE JOKER
 1F100..1F10A  ; Common # No  [11] DIGIT ZERO FULL STOP..DIGIT NINE COMMA
 1F110..1F12E  ; Common # So  [31] PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ
-1F130..1F169  ; Common # So  [58] SQUARED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
+1F130..1F16B  ; Common # So  [60] SQUARED LATIN CAPITAL LETTER A..RAISED MD SIGN
 1F170..1F19A  ; Common # So  [43] NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VS
 1F1E6..1F1FF  ; Common # So  [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
 1F201..1F202  ; Common # So   [2] SQUARED KATAKANA KOKO..SQUARED KATAKANA SA
@@ -567,33 +567,23 @@
 1F442..1F4F7  ; Common # So [182] EAR..CAMERA
 1F4F9..1F4FC  ; Common # So   [4] VIDEO CAMERA..VIDEOCASSETTE
 1F500..1F53D  ; Common # So  [62] TWISTED RIGHTWARDS ARROWS..DOWN-POINTING SMALL RED TRIANGLE
+1F540..1F543  ; Common # So   [4] CIRCLED CROSS POMMEE..NOTCHED LEFT SEMICIRCLE WITH THREE DOTS
 1F550..1F567  ; Common # So  [24] CLOCK FACE ONE OCLOCK..CLOCK FACE TWELVE-THIRTY
-1F5FB..1F5FF  ; Common # So   [5] MOUNT FUJI..MOYAI
-1F601..1F610  ; Common # So  [16] GRINNING FACE WITH SMILING EYES..NEUTRAL FACE
-1F612..1F614  ; Common # So   [3] UNAMUSED FACE..PENSIVE FACE
-1F616         ; Common # So       CONFOUNDED FACE
-1F618         ; Common # So       FACE THROWING A KISS
-1F61A         ; Common # So       KISSING FACE WITH CLOSED EYES
-1F61C..1F61E  ; Common # So   [3] FACE WITH STUCK-OUT TONGUE AND WINKING EYE..DISAPPOINTED FACE
-1F620..1F625  ; Common # So   [6] ANGRY FACE..DISAPPOINTED BUT RELIEVED FACE
-1F628..1F62B  ; Common # So   [4] FEARFUL FACE..TIRED FACE
-1F62D         ; Common # So       LOUDLY CRYING FACE
-1F630..1F633  ; Common # So   [4] FACE WITH OPEN MOUTH AND COLD SWEAT..FLUSHED FACE
-1F635..1F640  ; Common # So  [12] DIZZY FACE..WEARY CAT FACE
+1F5FB..1F640  ; Common # So  [70] MOUNT FUJI..WEARY CAT FACE
 1F645..1F64F  ; Common # So  [11] FACE WITH NO GOOD GESTURE..PERSON WITH FOLDED HANDS
 1F680..1F6C5  ; Common # So  [70] ROCKET..LEFT LUGGAGE
 1F700..1F773  ; Common # So [116] ALCHEMICAL SYMBOL FOR QUINTESSENCE..ALCHEMICAL SYMBOL FOR HALF OUNCE
 E0001         ; Common # Cf       LANGUAGE TAG
 E0020..E007F  ; Common # Cf  [96] TAG SPACE..CANCEL TAG
 
-# Total code points: 6379
+# Total code points: 6412
 
 # ================================================
 
 0041..005A    ; Latin # L&  [26] LATIN CAPITAL LETTER A..LATIN CAPITAL LETTER Z
 0061..007A    ; Latin # L&  [26] LATIN SMALL LETTER A..LATIN SMALL LETTER Z
-00AA          ; Latin # L&       FEMININE ORDINAL INDICATOR
-00BA          ; Latin # L&       MASCULINE ORDINAL INDICATOR
+00AA          ; Latin # Lo       FEMININE ORDINAL INDICATOR
+00BA          ; Latin # Lo       MASCULINE ORDINAL INDICATOR
 00C0..00D6    ; Latin # L&  [23] LATIN CAPITAL LETTER A WITH GRAVE..LATIN CAPITAL LETTER O WITH DIAERESIS
 00D8..00F6    ; Latin # L&  [31] LATIN CAPITAL LETTER O WITH STROKE..LATIN SMALL LETTER O WITH DIAERESIS
 00F8..01BA    ; Latin # L& [195] LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER EZH WITH TAIL
@@ -607,7 +597,7 @@
 02E0..02E4    ; Latin # Lm   [5] MODIFIER LETTER SMALL GAMMA..MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
 1D00..1D25    ; Latin # L&  [38] LATIN LETTER SMALL CAPITAL A..LATIN LETTER AIN
 1D2C..1D5C    ; Latin # Lm  [49] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL AIN
-1D62..1D65    ; Latin # L&   [4] LATIN SUBSCRIPT SMALL LETTER I..LATIN SUBSCRIPT SMALL LETTER V
+1D62..1D65    ; Latin # Lm   [4] LATIN SUBSCRIPT SMALL LETTER I..LATIN SUBSCRIPT SMALL LETTER V
 1D6B..1D77    ; Latin # L&  [13] LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G
 1D79..1D9A    ; Latin # L&  [34] LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK
 1D9B..1DBE    ; Latin # Lm  [36] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL EZH
@@ -621,22 +611,23 @@
 2160..2182    ; Latin # Nl  [35] ROMAN NUMERAL ONE..ROMAN NUMERAL TEN THOUSAND
 2183..2184    ; Latin # L&   [2] ROMAN NUMERAL REVERSED ONE HUNDRED..LATIN SMALL LETTER REVERSED C
 2185..2188    ; Latin # Nl   [4] ROMAN NUMERAL SIX LATE FORM..ROMAN NUMERAL ONE HUNDRED THOUSAND
-2C60..2C7C    ; Latin # L&  [29] LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN SUBSCRIPT SMALL LETTER J
-2C7D          ; Latin # Lm       MODIFIER LETTER CAPITAL V
+2C60..2C7B    ; Latin # L&  [28] LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN LETTER SMALL CAPITAL TURNED E
+2C7C..2C7D    ; Latin # Lm   [2] LATIN SUBSCRIPT SMALL LETTER J..MODIFIER LETTER CAPITAL V
 2C7E..2C7F    ; Latin # L&   [2] LATIN CAPITAL LETTER S WITH SWASH TAIL..LATIN CAPITAL LETTER Z WITH SWASH TAIL
 A722..A76F    ; Latin # L&  [78] LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN SMALL LETTER CON
 A770          ; Latin # Lm       MODIFIER LETTER US
 A771..A787    ; Latin # L&  [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T
 A78B..A78E    ; Latin # L&   [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
-A790..A791    ; Latin # L&   [2] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER N WITH DESCENDER
-A7A0..A7A9    ; Latin # L&  [10] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN SMALL LETTER S WITH OBLIQUE STROKE
+A790..A793    ; Latin # L&   [4] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER C WITH BAR
+A7A0..A7AA    ; Latin # L&  [11] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN CAPITAL LETTER H WITH HOOK
+A7F8..A7F9    ; Latin # Lm   [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE
 A7FA          ; Latin # L&       LATIN LETTER SMALL CAPITAL TURNED M
 A7FB..A7FF    ; Latin # Lo   [5] LATIN EPIGRAPHIC LETTER REVERSED F..LATIN EPIGRAPHIC LETTER ARCHAIC M
 FB00..FB06    ; Latin # L&   [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST
 FF21..FF3A    ; Latin # L&  [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z
 FF41..FF5A    ; Latin # L&  [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN SMALL LETTER Z
 
-# Total code points: 1267
+# Total code points: 1272
 
 # ================================================
 
@@ -656,7 +647,7 @@
 03F7..03FF    ; Greek # L&   [9] GREEK CAPITAL LETTER SHO..GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL
 1D26..1D2A    ; Greek # L&   [5] GREEK LETTER SMALL CAPITAL GAMMA..GREEK LETTER SMALL CAPITAL PSI
 1D5D..1D61    ; Greek # Lm   [5] MODIFIER LETTER SMALL BETA..MODIFIER LETTER SMALL CHI
-1D66..1D6A    ; Greek # L&   [5] GREEK SUBSCRIPT SMALL LETTER BETA..GREEK SUBSCRIPT SMALL LETTER CHI
+1D66..1D6A    ; Greek # Lm   [5] GREEK SUBSCRIPT SMALL LETTER BETA..GREEK SUBSCRIPT SMALL LETTER CHI
 1DBF          ; Greek # Lm       MODIFIER LETTER SMALL THETA
 1F00..1F15    ; Greek # L&  [22] GREEK SMALL LETTER ALPHA WITH PSILI..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
 1F18..1F1D    ; Greek # L&   [6] GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
@@ -710,12 +701,13 @@
 A66F          ; Cyrillic # Mn       COMBINING CYRILLIC VZMET
 A670..A672    ; Cyrillic # Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
 A673          ; Cyrillic # Po       SLAVONIC ASTERISK
-A67C..A67D    ; Cyrillic # Mn   [2] COMBINING CYRILLIC KAVYKA..COMBINING CYRILLIC PAYEROK
+A674..A67D    ; Cyrillic # Mn  [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK
 A67E          ; Cyrillic # Po       CYRILLIC KAVYKA
 A67F          ; Cyrillic # Lm       CYRILLIC PAYEROK
 A680..A697    ; Cyrillic # L&  [24] CYRILLIC CAPITAL LETTER DWE..CYRILLIC SMALL LETTER SHWE
+A69F          ; Cyrillic # Mn       COMBINING CYRILLIC LETTER IOTIFIED E
 
-# Total code points: 408
+# Total code points: 417
 
 # ================================================
 
@@ -724,9 +716,10 @@
 055A..055F    ; Armenian # Po   [6] ARMENIAN APOSTROPHE..ARMENIAN ABBREVIATION MARK
 0561..0587    ; Armenian # L&  [39] ARMENIAN SMALL LETTER AYB..ARMENIAN SMALL LIGATURE ECH YIWN
 058A          ; Armenian # Pd       ARMENIAN HYPHEN
+058F          ; Armenian # Sc       ARMENIAN DRAM SIGN
 FB13..FB17    ; Armenian # L&   [5] ARMENIAN SMALL LIGATURE MEN NOW..ARMENIAN SMALL LIGATURE MEN XEH
 
-# Total code points: 90
+# Total code points: 91
 
 # ================================================
 
@@ -757,7 +750,7 @@
 
 # ================================================
 
-0600..0603    ; Arabic # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
+0600..0604    ; Arabic # Cf   [5] ARABIC NUMBER SIGN..ARABIC SIGN SAMVAT
 0606..0608    ; Arabic # Sm   [3] ARABIC-INDIC CUBE ROOT..ARABIC RAY
 0609..060A    ; Arabic # Po   [2] ARABIC-INDIC PER MILLE SIGN..ARABIC-INDIC PER TEN THOUSAND SIGN
 060B          ; Arabic # Sc       AFGHANI SIGN
@@ -786,6 +779,9 @@
 06FD..06FE    ; Arabic # So   [2] ARABIC SIGN SINDHI AMPERSAND..ARABIC SIGN SINDHI POSTPOSITION MEN
 06FF          ; Arabic # Lo       ARABIC LETTER HEH WITH INVERTED V
 0750..077F    ; Arabic # Lo  [48] ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS ABOVE
+08A0          ; Arabic # Lo       ARABIC LETTER BEH WITH SMALL V BELOW
+08A2..08AC    ; Arabic # Lo  [11] ARABIC LETTER JEEM WITH TWO DOTS ABOVE..ARABIC LETTER ROHINGYA YEH
+08E4..08FE    ; Arabic # Mn  [27] ARABIC CURLY FATHA..ARABIC DAMMA WITH DOT
 FB50..FBB1    ; Arabic # Lo  [98] ARABIC LETTER ALEF WASLA ISOLATED FORM..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
 FBB2..FBC1    ; Arabic # Sk  [16] ARABIC SYMBOL DOT ABOVE..ARABIC SYMBOL SMALL TAH BELOW
 FBD3..FD3D    ; Arabic # Lo [363] ARABIC LETTER NG ISOLATED FORM..ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
@@ -796,8 +792,42 @@
 FE70..FE74    ; Arabic # Lo   [5] ARABIC FATHATAN ISOLATED FORM..ARABIC KASRATAN ISOLATED FORM
 FE76..FEFC    ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
 10E60..10E7E  ; Arabic # No  [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
+1EE00..1EE03  ; Arabic # Lo   [4] ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL
+1EE05..1EE1F  ; Arabic # Lo  [27] ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF
+1EE21..1EE22  ; Arabic # Lo   [2] ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM
+1EE24         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL HEH
+1EE27         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL HAH
+1EE29..1EE32  ; Arabic # Lo  [10] ARABIC MATHEMATICAL INITIAL YEH..ARABIC MATHEMATICAL INITIAL QAF
+1EE34..1EE37  ; Arabic # Lo   [4] ARABIC MATHEMATICAL INITIAL SHEEN..ARABIC MATHEMATICAL INITIAL KHAH
+1EE39         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL DAD
+1EE3B         ; Arabic # Lo       ARABIC MATHEMATICAL INITIAL GHAIN
+1EE42         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED JEEM
+1EE47         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED HAH
+1EE49         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED YEH
+1EE4B         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED LAM
+1EE4D..1EE4F  ; Arabic # Lo   [3] ARABIC MATHEMATICAL TAILED NOON..ARABIC MATHEMATICAL TAILED AIN
+1EE51..1EE52  ; Arabic # Lo   [2] ARABIC MATHEMATICAL TAILED SAD..ARABIC MATHEMATICAL TAILED QAF
+1EE54         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED SHEEN
+1EE57         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED KHAH
+1EE59         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DAD
+1EE5B         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED GHAIN
+1EE5D         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DOTLESS NOON
+1EE5F         ; Arabic # Lo       ARABIC MATHEMATICAL TAILED DOTLESS QAF
+1EE61..1EE62  ; Arabic # Lo   [2] ARABIC MATHEMATICAL STRETCHED BEH..ARABIC MATHEMATICAL STRETCHED JEEM
+1EE64         ; Arabic # Lo       ARABIC MATHEMATICAL STRETCHED HEH
+1EE67..1EE6A  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED HAH..ARABIC MATHEMATICAL STRETCHED KAF
+1EE6C..1EE72  ; Arabic # Lo   [7] ARABIC MATHEMATICAL STRETCHED MEEM..ARABIC MATHEMATICAL STRETCHED QAF
+1EE74..1EE77  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED SHEEN..ARABIC MATHEMATICAL STRETCHED KHAH
+1EE79..1EE7C  ; Arabic # Lo   [4] ARABIC MATHEMATICAL STRETCHED DAD..ARABIC MATHEMATICAL STRETCHED DOTLESS BEH
+1EE7E         ; Arabic # Lo       ARABIC MATHEMATICAL STRETCHED DOTLESS FEH
+1EE80..1EE89  ; Arabic # Lo  [10] ARABIC MATHEMATICAL LOOPED ALEF..ARABIC MATHEMATICAL LOOPED YEH
+1EE8B..1EE9B  ; Arabic # Lo  [17] ARABIC MATHEMATICAL LOOPED LAM..ARABIC MATHEMATICAL LOOPED GHAIN
+1EEA1..1EEA3  ; Arabic # Lo   [3] ARABIC MATHEMATICAL DOUBLE-STRUCK BEH..ARABIC MATHEMATICAL DOUBLE-STRUCK DAL
+1EEA5..1EEA9  ; Arabic # Lo   [5] ARABIC MATHEMATICAL DOUBLE-STRUCK WAW..ARABIC MATHEMATICAL DOUBLE-STRUCK YEH
+1EEAB..1EEBB  ; Arabic # Lo  [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN
+1EEF0..1EEF1  ; Arabic # Sm   [2] ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL..ARABIC MATHEMATICAL OPERATOR HAH WITH DAL
 
-# Total code points: 1051
+# Total code points: 1234
 
 # ================================================
 
@@ -838,6 +868,7 @@
 0958..0961    ; Devanagari # Lo  [10] DEVANAGARI LETTER QA..DEVANAGARI LETTER VOCALIC LL
 0962..0963    ; Devanagari # Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
 0966..096F    ; Devanagari # Nd  [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE
+0970          ; Devanagari # Po       DEVANAGARI ABBREVIATION SIGN
 0971          ; Devanagari # Lm       DEVANAGARI SIGN HIGH SPACING DOT
 0972..0977    ; Devanagari # Lo   [6] DEVANAGARI LETTER CANDRA A..DEVANAGARI LETTER UUE
 0979..097F    ; Devanagari # Lo   [7] DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA
@@ -846,7 +877,7 @@
 A8F8..A8FA    ; Devanagari # Po   [3] DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET
 A8FB          ; Devanagari # Lo       DEVANAGARI HEADSTROKE
 
-# Total code points: 150
+# Total code points: 151
 
 # ================================================
 
@@ -927,9 +958,10 @@
 0AE0..0AE1    ; Gujarati # Lo   [2] GUJARATI LETTER VOCALIC RR..GUJARATI LETTER VOCALIC LL
 0AE2..0AE3    ; Gujarati # Mn   [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
 0AE6..0AEF    ; Gujarati # Nd  [10] GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE
+0AF0          ; Gujarati # Po       GUJARATI ABBREVIATION SIGN
 0AF1          ; Gujarati # Sc       GUJARATI RUPEE SIGN
 
-# Total code points: 83
+# Total code points: 84
 
 # ================================================
 
@@ -1119,16 +1151,18 @@
 0EC6          ; Lao # Lm       LAO KO LA
 0EC8..0ECD    ; Lao # Mn   [6] LAO TONE MAI EK..LAO NIGGAHITA
 0ED0..0ED9    ; Lao # Nd  [10] LAO DIGIT ZERO..LAO DIGIT NINE
-0EDC..0EDD    ; Lao # Lo   [2] LAO HO NO..LAO HO MO
+0EDC..0EDF    ; Lao # Lo   [4] LAO HO NO..LAO LETTER KHMU NYO
 
-# Total code points: 65
+# Total code points: 67
 
 # ================================================
 
 0F00          ; Tibetan # Lo       TIBETAN SYLLABLE OM
 0F01..0F03    ; Tibetan # So   [3] TIBETAN MARK GTER YIG MGO TRUNCATED A..TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA
 0F04..0F12    ; Tibetan # Po  [15] TIBETAN MARK INITIAL YIG MGO MDUN MA..TIBETAN MARK RGYA GRAM SHAD
-0F13..0F17    ; Tibetan # So   [5] TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
+0F13          ; Tibetan # So       TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN
+0F14          ; Tibetan # Po       TIBETAN MARK GTER TSHEG
+0F15..0F17    ; Tibetan # So   [3] TIBETAN LOGOTYPE SIGN CHAD RTAGS..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
 0F18..0F19    ; Tibetan # Mn   [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
 0F1A..0F1F    ; Tibetan # So   [6] TIBETAN SIGN RDEL DKAR GCIG..TIBETAN SIGN RDEL DKAR RDEL NAG
 0F20..0F29    ; Tibetan # Nd  [10] TIBETAN DIGIT ZERO..TIBETAN DIGIT NINE
@@ -1212,16 +1246,21 @@
 # ================================================
 
 10A0..10C5    ; Georgian # L&  [38] GEORGIAN CAPITAL LETTER AN..GEORGIAN CAPITAL LETTER HOE
+10C7          ; Georgian # L&       GEORGIAN CAPITAL LETTER YN
+10CD          ; Georgian # L&       GEORGIAN CAPITAL LETTER AEN
 10D0..10FA    ; Georgian # Lo  [43] GEORGIAN LETTER AN..GEORGIAN LETTER AIN
 10FC          ; Georgian # Lm       MODIFIER LETTER GEORGIAN NAR
+10FD..10FF    ; Georgian # Lo   [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN
 2D00..2D25    ; Georgian # L&  [38] GEORGIAN SMALL LETTER AN..GEORGIAN SMALL LETTER HOE
+2D27          ; Georgian # L&       GEORGIAN SMALL LETTER YN
+2D2D          ; Georgian # L&       GEORGIAN SMALL LETTER AEN
 
-# Total code points: 120
+# Total code points: 127
 
 # ================================================
 
 1100..11FF    ; Hangul # Lo [256] HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
-302E..302F    ; Hangul # Mn   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
+302E..302F    ; Hangul # Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 3131..318E    ; Hangul # Lo  [94] HANGUL LETTER KIYEOK..HANGUL LETTER ARAEAE
 3200..321E    ; Hangul # So  [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
 3260..327E    ; Hangul # So  [31] CIRCLED HANGUL KIYEOK..CIRCLED HANGUL IEUNG U
@@ -1256,8 +1295,7 @@
 1312..1315    ; Ethiopic # Lo   [4] ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE
 1318..135A    ; Ethiopic # Lo  [67] ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA
 135D..135F    ; Ethiopic # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
-1360          ; Ethiopic # So       ETHIOPIC SECTION MARK
-1361..1368    ; Ethiopic # Po   [8] ETHIOPIC WORDSPACE..ETHIOPIC PARAGRAPH SEPARATOR
+1360..1368    ; Ethiopic # Po   [9] ETHIOPIC SECTION MARK..ETHIOPIC PARAGRAPH SEPARATOR
 1369..137C    ; Ethiopic # No  [20] ETHIOPIC DIGIT ONE..ETHIOPIC NUMBER TEN THOUSAND
 1380..138F    ; Ethiopic # Lo  [16] ETHIOPIC SYLLABLE SEBATBEIT MWA..ETHIOPIC SYLLABLE PWE
 1390..1399    ; Ethiopic # So  [10] ETHIOPIC TONAL MARK YIZET..ETHIOPIC TONAL MARK KURT
@@ -1313,7 +1351,7 @@
 # ================================================
 
 1780..17B3    ; Khmer # Lo  [52] KHMER LETTER KA..KHMER INDEPENDENT VOWEL QAU
-17B4..17B5    ; Khmer # Cf   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
+17B4..17B5    ; Khmer # Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
 17B6          ; Khmer # Mc       KHMER VOWEL SIGN AA
 17B7..17BD    ; Khmer # Mn   [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
 17BE..17C5    ; Khmer # Mc   [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
@@ -1393,16 +1431,15 @@
 3038..303A    ; Han # Nl   [3] HANGZHOU NUMERAL TEN..HANGZHOU NUMERAL THIRTY
 303B          ; Han # Lm       VERTICAL IDEOGRAPHIC ITERATION MARK
 3400..4DB5    ; Han # Lo [6582] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DB5
-4E00..9FCB    ; Han # Lo [20940] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCB
-F900..FA2D    ; Han # Lo [302] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA2D
-FA30..FA6D    ; Han # Lo  [62] CJK COMPATIBILITY IDEOGRAPH-FA30..CJK COMPATIBILITY IDEOGRAPH-FA6D
+4E00..9FCC    ; Han # Lo [20941] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FCC
+F900..FA6D    ; Han # Lo [366] CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA6D
 FA70..FAD9    ; Han # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
 20000..2A6D6  ; Han # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
 2A700..2B734  ; Han # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 2B740..2B81D  ; Han # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 2F800..2FA1D  ; Han # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 
-# Total code points: 75960
+# Total code points: 75963
 
 # ================================================
 
@@ -1447,6 +1484,7 @@
 1CD4..1CE0    ; Inherited # Mn  [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
 1CE2..1CE8    ; Inherited # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
 1CED          ; Inherited # Mn       VEDIC SIGN TIRYAK
+1CF4          ; Inherited # Mn       VEDIC TONE CANDRA ABOVE
 1DC0..1DE6    ; Inherited # Mn  [39] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
 1DFC..1DFF    ; Inherited # Mn   [4] COMBINING DOUBLE INVERTED BREVE BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 200C..200D    ; Inherited # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
@@ -1466,7 +1504,7 @@
 1D1AA..1D1AD  ; Inherited # Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
 E0100..E01EF  ; Inherited # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
 
-# Total code points: 523
+# Total code points: 524
 
 # ================================================
 
@@ -1587,11 +1625,12 @@
 2CE5..2CEA    ; Coptic # So   [6] COPTIC SYMBOL MI RO..COPTIC SYMBOL SHIMA SIMA
 2CEB..2CEE    ; Coptic # L&   [4] COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI..COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA
 2CEF..2CF1    ; Coptic # Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
+2CF2..2CF3    ; Coptic # L&   [2] COPTIC CAPITAL LETTER BOHAIRIC KHEI..COPTIC SMALL LETTER BOHAIRIC KHEI
 2CF9..2CFC    ; Coptic # Po   [4] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN VERSE DIVIDER
 2CFD          ; Coptic # No       COPTIC FRACTION ONE HALF
 2CFE..2CFF    ; Coptic # Po   [2] COPTIC FULL STOP..COPTIC MORPHOLOGICAL DIVIDER
 
-# Total code points: 135
+# Total code points: 137
 
 # ================================================
 
@@ -1614,12 +1653,12 @@
 
 # ================================================
 
-2D30..2D65    ; Tifinagh # Lo  [54] TIFINAGH LETTER YA..TIFINAGH LETTER YAZZ
+2D30..2D67    ; Tifinagh # Lo  [56] TIFINAGH LETTER YA..TIFINAGH LETTER YO
 2D6F          ; Tifinagh # Lm       TIFINAGH MODIFIER LETTER LABIALIZATION MARK
 2D70          ; Tifinagh # Po       TIFINAGH SEPARATOR MARK
 2D7F          ; Tifinagh # Mn       TIFINAGH CONSONANT JOINER
 
-# Total code points: 57
+# Total code points: 59
 
 # ================================================
 
@@ -1729,10 +1768,14 @@
 1BA6..1BA7    ; Sundanese # Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
 1BA8..1BA9    ; Sundanese # Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
 1BAA          ; Sundanese # Mc       SUNDANESE SIGN PAMAAEH
+1BAB          ; Sundanese # Mn       SUNDANESE SIGN VIRAMA
+1BAC..1BAD    ; Sundanese # Mc   [2] SUNDANESE CONSONANT SIGN PASANGAN MA..SUNDANESE CONSONANT SIGN PASANGAN WA
 1BAE..1BAF    ; Sundanese # Lo   [2] SUNDANESE LETTER KHA..SUNDANESE LETTER SYA
 1BB0..1BB9    ; Sundanese # Nd  [10] SUNDANESE DIGIT ZERO..SUNDANESE DIGIT NINE
+1BBA..1BBF    ; Sundanese # Lo   [6] SUNDANESE AVAGRAHA..SUNDANESE LETTER FINAL M
+1CC0..1CC7    ; Sundanese # Po   [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA
 
-# Total code points: 55
+# Total code points: 72
 
 # ================================================
 
@@ -1940,6 +1983,15 @@
 
 # ================================================
 
+AAE0..AAEA    ; Meetei_Mayek # Lo  [11] MEETEI MAYEK LETTER E..MEETEI MAYEK LETTER SSA
+AAEB          ; Meetei_Mayek # Mc       MEETEI MAYEK VOWEL SIGN II
+AAEC..AAED    ; Meetei_Mayek # Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
+AAEE..AAEF    ; Meetei_Mayek # Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
+AAF0..AAF1    ; Meetei_Mayek # Po   [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
+AAF2          ; Meetei_Mayek # Lo       MEETEI MAYEK ANJI
+AAF3..AAF4    ; Meetei_Mayek # Lm   [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK
+AAF5          ; Meetei_Mayek # Mc       MEETEI MAYEK VOWEL SIGN VISARGA
+AAF6          ; Meetei_Mayek # Mn       MEETEI MAYEK VIRAMA
 ABC0..ABE2    ; Meetei_Mayek # Lo  [35] MEETEI MAYEK LETTER KOK..MEETEI MAYEK LETTER I LONSUM
 ABE3..ABE4    ; Meetei_Mayek # Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
 ABE5          ; Meetei_Mayek # Mn       MEETEI MAYEK VOWEL SIGN ANAP
@@ -1951,7 +2003,7 @@
 ABED          ; Meetei_Mayek # Mn       MEETEI MAYEK APUN IYEK
 ABF0..ABF9    ; Meetei_Mayek # Nd  [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DIGIT NINE
 
-# Total code points: 56
+# Total code points: 79
 
 # ================================================
 
@@ -2040,4 +2092,74 @@
 
 # Total code points: 29
 
+# ================================================
+
+11100..11102  ; Chakma # Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
+11103..11126  ; Chakma # Lo  [36] CHAKMA LETTER AA..CHAKMA LETTER HAA
+11127..1112B  ; Chakma # Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
+1112C         ; Chakma # Mc       CHAKMA VOWEL SIGN E
+1112D..11134  ; Chakma # Mn   [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA
+11136..1113F  ; Chakma # Nd  [10] CHAKMA DIGIT ZERO..CHAKMA DIGIT NINE
+11140..11143  ; Chakma # Po   [4] CHAKMA SECTION MARK..CHAKMA QUESTION MARK
+
+# Total code points: 67
+
+# ================================================
+
+109A0..109B7  ; Meroitic_Cursive # Lo  [24] MEROITIC CURSIVE LETTER A..MEROITIC CURSIVE LETTER DA
+109BE..109BF  ; Meroitic_Cursive # Lo   [2] MEROITIC CURSIVE LOGOGRAM RMT..MEROITIC CURSIVE LOGOGRAM IMN
+
+# Total code points: 26
+
+# ================================================
+
+10980..1099F  ; Meroitic_Hieroglyphs # Lo  [32] MEROITIC HIEROGLYPHIC LETTER A..MEROITIC HIEROGLYPHIC SYMBOL VIDJ-2
+
+# Total code points: 32
+
+# ================================================
+
+16F00..16F44  ; Miao # Lo  [69] MIAO LETTER PA..MIAO LETTER HHA
+16F50         ; Miao # Lo       MIAO LETTER NASALIZATION
+16F51..16F7E  ; Miao # Mc  [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
+16F8F..16F92  ; Miao # Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
+16F93..16F9F  ; Miao # Lm  [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8
+
+# Total code points: 133
+
+# ================================================
+
+11180..11181  ; Sharada # Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
+11182         ; Sharada # Mc       SHARADA SIGN VISARGA
+11183..111B2  ; Sharada # Lo  [48] SHARADA LETTER A..SHARADA LETTER HA
+111B3..111B5  ; Sharada # Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
+111B6..111BE  ; Sharada # Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
+111BF..111C0  ; Sharada # Mc   [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
+111C1..111C4  ; Sharada # Lo   [4] SHARADA SIGN AVAGRAHA..SHARADA OM
+111C5..111C8  ; Sharada # Po   [4] SHARADA DANDA..SHARADA SEPARATOR
+111D0..111D9  ; Sharada # Nd  [10] SHARADA DIGIT ZERO..SHARADA DIGIT NINE
+
+# Total code points: 83
+
+# ================================================
+
+110D0..110E8  ; Sora_Sompeng # Lo  [25] SORA SOMPENG LETTER SAH..SORA SOMPENG LETTER MAE
+110F0..110F9  ; Sora_Sompeng # Nd  [10] SORA SOMPENG DIGIT ZERO..SORA SOMPENG DIGIT NINE
+
+# Total code points: 35
+
+# ================================================
+
+11680..116AA  ; Takri # Lo  [43] TAKRI LETTER A..TAKRI LETTER RRA
+116AB         ; Takri # Mn       TAKRI SIGN ANUSVARA
+116AC         ; Takri # Mc       TAKRI SIGN VISARGA
+116AD         ; Takri # Mn       TAKRI VOWEL SIGN AA
+116AE..116AF  ; Takri # Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
+116B0..116B5  ; Takri # Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
+116B6         ; Takri # Mc       TAKRI SIGN VIRAMA
+116B7         ; Takri # Mn       TAKRI SIGN NUKTA
+116C0..116C9  ; Takri # Nd  [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE
+
+# Total code points: 66
+
 # EOF
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/lang/SecurityManager/CheckPackageAccess.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7146431
+ * @summary Test that internal JAXP packages cannot be accessed
+ */
+
+public class CheckPackageAccess {
+
+    public static void main(String[] args) throws Exception {
+
+        String[] pkgs = new String[] {
+            "com.sun.org.apache.xerces.internal.utils.",
+            "com.sun.org.apache.xalan.internal.utils." };
+        SecurityManager sm = new SecurityManager();
+        System.setSecurityManager(sm);
+        for (String pkg : pkgs) {
+            System.out.println("Checking package access for " + pkg);
+            try {
+                sm.checkPackageAccess(pkg);
+                throw new Exception("Expected SecurityException not thrown");
+            } catch (SecurityException se) { }
+        }
+    }
+}
--- a/test/java/nio/channels/Selector/OpRead.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/nio/channels/Selector/OpRead.java	Tue May 08 07:34:53 2012 -0700
@@ -58,7 +58,10 @@
             boolean done = false;
             int failCount = 0;
             while (!done) {
-                if (selector.select() > 0) {
+                int nSelected = selector.select();
+                if (nSelected > 0) {
+                    if (nSelected > 1)
+                        throw new RuntimeException("More than one channel selected");
                     Set<SelectionKey> keys = selector.selectedKeys();
                     Iterator<SelectionKey> iterator = keys.iterator();
                     while (iterator.hasNext()) {
--- a/test/java/nio/charset/coders/StreamTimeout.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/nio/charset/coders/StreamTimeout.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2012, Oracle and/or its affiliates. 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
@@ -27,51 +27,56 @@
  *          when the underlying byte stream times out
  */
 
-import java.net.*;
-import java.io.*;
-
+import java.io.Closeable;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.InterruptedIOException;
+import java.io.OutputStreamWriter;
+import java.io.PrintStream;
+import java.io.Reader;
+import java.io.Writer;
+import java.net.ServerSocket;
+import java.net.Socket;
 
 public class StreamTimeout {
+    static final PrintStream log = System.err;
+    static String charset = "US-ASCII";
 
-    private static PrintStream log = System.err;
-
-    private static String charset = "US-ASCII";
+    private static class Client extends Thread implements Closeable {
+        private final Socket so;
 
-    private static Object lock = new Object();
-    private static synchronized void waitABit(int millisec) {
-        synchronized(lock) {
-            try {
-                lock.wait(millisec);
-            } catch (InterruptedException e) {
-                //ignore
-            }
+        Client(int port) throws IOException {
+            so = new Socket("127.0.0.1", port);
         }
-    }
 
-    private static class Client extends Thread {
+        @Override
         public void run() {
             try {
-                Socket so = new Socket("127.0.0.1", 22222);
                 Writer wr = new OutputStreamWriter(so.getOutputStream(),
-                                                   charset);
+                        charset);
                 wr.write("ab");
                 wr.flush();
             } catch (IOException x) {
                 log.print("Unexpected exception in writer: ");
                 x.printStackTrace();
-                System.exit(1);
             }
         }
+
+        @Override
+        public void close() throws IOException {
+            so.close();
+        }
     }
 
     private static void gobble(InputStream is, Reader rd,
-                               int ec, boolean force)
-        throws Exception
-    {
+            int ec, boolean force)
+                    throws Exception
+                    {
         int a = is.available();
         boolean r = rd.ready();
         log.print("" + a + " bytes available, "
-                  + "reader " + (r ? "" : "not ") + "ready");
+                + "reader " + (r ? "" : "not ") + "ready");
         if (!r && !force) {
             log.println();
             return;
@@ -84,10 +89,10 @@
             throw x;
         }
         log.println(", read() ==> "
-                    + (c >= 0 ? ("'" + (char)c + "'" ): "EOF"));
+                + (c >= 0 ? ("'" + (char)c + "'" ): "EOF"));
         if (c != ec)
             throw new Exception("Incorrect value read: Expected "
-                                + ec + ", read " + (char)c);
+                    + ec + ", read " + (char)c);
     }
 
     public static void main(String[] args) throws Exception {
@@ -95,43 +100,49 @@
         if (args.length > 0)
             charset = args[0];
 
-        ServerSocket ss = new ServerSocket(22222);
-        Thread cl = new Client();
-        cl.start();
-        Socket s = ss.accept();
-        s.setSoTimeout(150);
-        InputStream is = s.getInputStream();
-        Reader rd = new InputStreamReader(is, charset);
+        try(ServerSocket ss = new ServerSocket(0);
+            Client cl = new Client(ss.getLocalPort())) {
+
+            cl.start();
+
+            try(Socket s = ss.accept()) {
+                s.setSoTimeout(150);
 
-        while (is.available() <= 0)
-            Thread.yield();
+                try(InputStream is = s.getInputStream();
+                    Reader rd = new InputStreamReader(is, charset)) {
 
-        gobble(is, rd, 'a', false);
-        gobble(is, rd, 'b', false);
-        gobble(is, rd, -1, false);
+                    while (is.available() <= 0)
+                        Thread.yield();
+
+                    gobble(is, rd, 'a', false);
+                    gobble(is, rd, 'b', false);
+                    gobble(is, rd, -1, false);
 
-        boolean caught = false;
-        try {
-            gobble(is, rd, -1, true);
-        } catch (InterruptedIOException e) {
-            log.println("Read timed out, as expected");
-            caught = true;
-        }
-        if (!caught) {
-            log.println("Read did not time out, test inapplicable");
-            return;
-        }
+                    boolean caught = false;
+                    try {
+                        gobble(is, rd, -1, true);
+                    } catch (InterruptedIOException e) {
+                        log.println("Read timed out, as expected");
+                        caught = true;
+                    }
+                    if (!caught) {
+                        log.println("Read did not time out, test inapplicable");
+                        return;
+                    }
 
-        caught = false;
-        try {
-            gobble(is, rd, -1, true);
-        } catch (InterruptedIOException x) {
-            log.println("Second read timed out, as expected");
-            caught = true;
+                    caught = false;
+                    try {
+                        gobble(is, rd, -1, true);
+                    } catch (InterruptedIOException x) {
+                        log.println("Second read timed out, as expected");
+                        caught = true;
+                    }
+                    if (!caught)
+                        throw new Exception("Second read completed");
+                }
+            }
+
+            cl.join();
         }
-        if (!caught)
-            throw new Exception("Second read completed");
-
     }
-
 }
--- a/test/java/security/CodeSource/Implies.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/security/CodeSource/Implies.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -23,25 +23,42 @@
 
 /*
  * @test
- * @bug 4866847
- * @summary NullPointerException from CodeSource.matchLocation
+ * @bug 4866847 7152564 7155693
+ * @summary various CodeSource.implies tests
  */
 
 import java.security.CodeSource;
-import java.net.*;
+import java.net.URL;
 
 public class Implies {
     public static void main(String[] args) throws Exception {
         URL thisURL = new URL("http", "localhost", "file");
         URL thatURL = new URL("http", null, "file");
+        // should not throw NullPointerException
+        testImplies(thisURL, thatURL, false);
+
+        thisURL = new URL("http", "localhost", "dir/-");
+        thatURL = new URL("HTTP", "localhost", "dir/file");
+        // protocol check should ignore case
+        testImplies(thisURL, thatURL, true);
+
+        thisURL = new URL("http", "localhost", 80, "dir/-");
+        thatURL = new URL("HTTP", "localhost", "dir/file");
+        // port check should match default port of thatURL
+        testImplies(thisURL, thatURL, true);
+
+        System.out.println("test passed");
+    }
+
+    private static void testImplies(URL thisURL, URL thatURL, boolean result)
+        throws SecurityException
+    {
         CodeSource thisCs =
             new CodeSource(thisURL, (java.security.cert.Certificate[]) null);
         CodeSource thatCs =
             new CodeSource(thatURL, (java.security.cert.Certificate[]) null);
-
-        if (thisCs.implies(thatCs)) {
+        if (thisCs.implies(thatCs) != result) {
             throw new SecurityException("test failed");
         }
-        System.out.println("test passed");
     }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/util/AbstractCollection/ToArrayTest.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,215 @@
+/*
+ * Copyright (c) 2012 Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7121314
+ * @summary AbstractCollection.toArray(T[]) doesn't return the given array
+ *           in concurrent modification.
+ * @author Ulf Zibis, David Holmes
+ */
+
+import java.util.AbstractCollection;
+import java.util.Arrays;
+import java.util.Iterator;
+
+public class ToArrayTest {
+
+    static class TestCollection<E> extends AbstractCollection<E> {
+        private final E[] elements;
+        private int[] sizes;
+        private int nextSize;
+
+        public TestCollection(E[] elements) {
+            this.elements = elements;
+            setSizeSequence(new int[] { elements.length });
+        }
+
+        /*
+         * Sets the values that size() will return on each use. The next
+         * call to size will return sizes[0], then sizes[1] etc. This allows us
+         * to emulate a concurrent change to the contents of the collection
+         * without having to perform concurrent changes. If sizes[n+1] contains
+         * a larger value, the collection will appear to have shrunk when
+         * iterated; if a smaller value then the collection will appear to have
+         * grown when iterated.
+         */
+        void setSizeSequence(int... sizes) {
+            this.sizes = sizes;
+            nextSize = 0;
+        }
+
+        /* can change collection's size after each invocation */
+        @Override
+        public int size() {
+            return sizes[nextSize == sizes.length - 1 ? nextSize : nextSize++];
+        }
+
+        @Override
+        public Iterator<E> iterator() {
+            return new Iterator<E>() {
+                int pos = 0;
+
+                public boolean hasNext() {
+                    return pos < sizes[nextSize];
+                }
+                public E next() {
+                    return elements[pos++];
+                }
+                public void remove() {
+                    throw new UnsupportedOperationException(
+                            "Not supported yet.");
+                }
+            };
+        }
+    }
+
+    static final Object[] OBJECTS = { new Object(), new Object(), new Object() };
+    static final TestCollection<?> CANDIDATE = new TestCollection<Object>(OBJECTS);
+    static final int CAP = OBJECTS.length; // capacity of the CANDIDATE
+    static final int LAST = CAP - 1; // last possible array index
+    Object[] a;
+    Object[] res;
+
+    int last() {
+        return a.length - 1;
+    }
+
+    protected void test() throws Throwable {
+        // Check array type conversion
+        res = new TestCollection<>(new Object[] { "1", "2" }).toArray(new String[0]);
+        check(res instanceof String[]);
+        check(res.length == 2);
+        check(res[1] == "2");
+
+        // Check incompatible type of target array
+        try {
+            res = CANDIDATE.toArray(new String[CAP]);
+            check(false);
+        } catch (Throwable t) {
+            check(t instanceof ArrayStoreException);
+        }
+
+        // Check more elements than a.length
+        a = new Object[CAP - 1]; // appears too small
+        res = CANDIDATE.toArray(a);
+        check(res != a);
+        check(res[LAST] != null);
+
+        // Check equal elements as a.length
+        a = new Object[CAP]; // appears to match
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] != null);
+
+        // Check equal elements as a.length
+        a = new Object[CAP + 1]; // appears too big
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] == null);
+
+        // Check less elements than expected, but more than a.length
+        a = new Object[CAP - 2]; // appears too small
+        CANDIDATE.setSizeSequence(CAP, CAP - 1);
+        res = CANDIDATE.toArray(a);
+        check(res != a);
+        check(res.length == CAP - 1);
+        check(res[LAST - 1] != null);
+
+        // Check less elements than expected, but equal as a.length
+        a = Arrays.copyOf(OBJECTS, CAP); // appears to match
+        CANDIDATE.setSizeSequence(CAP, CAP - 1);
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] == null);
+
+        // Check more elements than expected and more than a.length
+        a = new Object[CAP - 1]; // appears to match
+        CANDIDATE.setSizeSequence(CAP - 1, CAP);
+        res = CANDIDATE.toArray(a);
+        check(res != a);
+        check(res[LAST] != null);
+
+        // Check more elements than expected, but equal as a.length
+        a = new Object[CAP - 1]; // appears to match
+        CANDIDATE.setSizeSequence(CAP - 2, CAP - 1);
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] != null);
+
+        // Check more elements than expected, but less than a.length
+        a = Arrays.copyOf(OBJECTS, CAP); // appears to match
+        CANDIDATE.setSizeSequence(CAP - 2, CAP - 1);
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] == null);
+
+        test_7121314();
+    }
+
+    /*
+     * Major target of this testcase, bug 7121314.
+     */
+    protected void test_7121314() throws Throwable {
+        // Check equal elements as a.length, but less than expected
+        a = new Object[CAP - 1]; // appears too small
+        CANDIDATE.setSizeSequence(CAP, CAP - 1);
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] != null);
+
+        // Check less elements than a.length and less than expected
+        a = Arrays.copyOf(OBJECTS, CAP - 1); // appears too small
+        CANDIDATE.setSizeSequence(CAP, CAP - 2);
+        res = CANDIDATE.toArray(a);
+        check(res == a);
+        check(res[last()] == null);
+
+    }
+
+    public static void main(String[] args) throws Throwable {
+        ToArrayTest testcase = new ToArrayTest();
+        try {
+            testcase.test();
+        } catch (Throwable t) {
+            unexpected(t);
+        }
+
+        System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed);
+        if (failed > 0) throw new Exception("Some tests failed");
+    }
+
+    //--------------------- Infrastructure ---------------------------
+    static volatile int passed = 0, failed = 0;
+    static void pass() { passed++; }
+    static void fail() { failed++; Thread.dumpStack(); }
+    static void fail(String msg) { System.out.println(msg); fail(); }
+    static void unexpected(Throwable t) { failed++; t.printStackTrace(); }
+    static void check(boolean cond) { if (cond) pass(); else fail(); }
+    static void equal(Object x, Object y) {
+        if (x == null ? y == null : x.equals(y)) pass();
+        else {System.out.println(x + " not equal to " + y); fail(); }
+    }
+}
+
+
--- a/test/java/util/concurrent/Phaser/Basic.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/util/concurrent/Phaser/Basic.java	Tue May 08 07:34:53 2012 -0700
@@ -96,7 +96,7 @@
             int phase = atTheStartingGate.getPhase();
             equal(phase, atTheStartingGate.arrive());
             int awaitPhase = atTheStartingGate.awaitAdvanceInterruptibly
-                (phase, 10, SECONDS);
+                (phase, 30, SECONDS);
             if (expectNextPhase) check(awaitPhase == (phase + 1));
 
             pass();
@@ -188,7 +188,7 @@
                     case 2: case 6: case 7:
                         return awaiter(phaser, -1, SECONDS);
                     default:
-                        return awaiter(phaser, 10, SECONDS); }}
+                        return awaiter(phaser, 30, SECONDS); }}
             public void remove() {throw new UnsupportedOperationException();}};
     }
 
@@ -204,7 +204,7 @@
                     case 2: case 5:
                         return awaiter(phaser, -1, SECONDS);
                     default:
-                        return awaiter(phaser, 10, SECONDS); }}
+                        return awaiter(phaser, 30, SECONDS); }}
             public void remove() {throw new UnsupportedOperationException();}};
     }
 
@@ -251,9 +251,11 @@
             int phase = phaser.getPhase();
             for (int i = 0; i < 4; i++) {
                 check(phaser.getPhase() == phase);
-                Awaiter a1 = awaiter(phaser, 10, SECONDS); a1.start();
+                Awaiter a1 = awaiter(phaser, 30, SECONDS); a1.start();
                 Arriver a2 = arrivers.next(); a2.start();
                 toTheStartingGate();
+                // allow a1 to block in awaitAdvanceInterruptibly
+                Thread.sleep(2000);
                 a1.interrupt();
                 a1.join();
                 phaser.arriveAndAwaitAdvance();
--- a/test/java/util/regex/RegExTest.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/java/util/regex/RegExTest.java	Tue May 08 07:34:53 2012 -0700
@@ -33,6 +33,7 @@
  * 5013885 5003322 4988891 5098443 5110268 6173522 4829857 5027748 6376940
  * 6358731 6178785 6284152 6231989 6497148 6486934 6233084 6504326 6635133
  * 6350801 6676425 6878475 6919132 6931676 6948903 6990617 7014645 7039066
+ * 7067045
  */
 
 import java.util.regex.*;
@@ -852,6 +853,17 @@
         if (!result.equals(toSupplementaries("zzz\\t$\\$zzz")))
             failCount++;
 
+        // IAE should be thrown if backslash or '$' is the last character
+        // in replacement string
+        try {
+            "\uac00".replaceAll("\uac00", "$");
+            "\uac00".replaceAll("\uac00", "\\");
+            failCount++;
+        } catch (IllegalArgumentException iie) {
+        } catch (Exception e) {
+            failCount++;
+        }
+
         report("Literal replacement");
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/sound/sampled/DirectAudio/bug6400879.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,138 @@
+/*
+ * Copyright (c) 2006, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 6400879
+   @bug 7100140
+   @summary Tests that Start/Stop sequence doesn't hang
+   @author Alexey Menkov
+   @run main bug6400879
+ */
+
+import javax.sound.sampled.*;
+
+public class bug6400879 extends Thread {
+
+    public static void main(String args[]) throws Exception {
+        bug6400879 pThis = new bug6400879();
+        //pThis.init();
+        pThis.setDaemon(true);
+        pThis.start();
+        monitor(pThis);
+    }
+
+    static final long BLOCK_TIMEOUT = 5000;    // 5 sec
+
+    // monitors that pThis doesn't hang
+    public static void monitor(bug6400879 pThis) throws Exception {
+        long prevLoop = -1;
+        long prevTime = currentTimeMillis();
+        while (pThis.isAlive()) {
+            if (pThis.loopCounter == prevLoop) {
+                if (currentTimeMillis() - prevTime > BLOCK_TIMEOUT) {
+                    // block!
+                    log("Test FAILED.");
+                    throw new RuntimeException("Test FAILED: thread has been blocked!");
+                }
+            } else {
+                prevLoop = pThis.loopCounter;
+                prevTime = currentTimeMillis();
+            }
+            delay(500);    // sleep for 0.5 sec
+        }
+        log("Test sucessfully passed.");
+    }
+
+    volatile long loopCounter = 0;
+    final long LOOPS_PER_LINE = 100;
+
+    public void run() {
+        SourceDataLine line = null;
+
+        DataLine.Info line_info = new DataLine.Info(SourceDataLine.class, null);
+        Line.Info infos[] = AudioSystem.getSourceLineInfo(line_info);
+
+        log("total " + infos.length + " lines");
+
+        for (int lineNum = 0; lineNum < infos.length; lineNum++) {
+            try {
+                line = (SourceDataLine)AudioSystem.getLine(infos[lineNum]);
+                log("testing line: " + line);
+                line.open(line.getFormat());
+                for (int i=0; i<LOOPS_PER_LINE; i++) {
+                    log("start->stop (" + i + ")");
+                    line.start();
+                    line.stop();
+                    log(" - OK");
+                    loopCounter++;
+                }
+                line.close();
+                line = null;
+            } catch (LineUnavailableException e1) {
+                log("LineUnavailableException caught, test okay.");
+                log(e1.getMessage());
+            } catch (SecurityException e2) {
+                log("SecurityException caught, test okay.");
+                log(e2.getMessage());
+            } catch (IllegalArgumentException e3) {
+                log("IllegalArgumentException caught, test okay.");
+                log(e3.getMessage());
+            }
+            if (line != null) {
+                line.close();
+                line = null;
+            }
+        }
+
+    }
+
+
+    // helper routines
+    static long startTime = currentTimeMillis();
+    static long currentTimeMillis() {
+        //return System.nanoTime() / 1000000L;
+        return System.currentTimeMillis();
+    }
+    static void log(String s) {
+        long time = currentTimeMillis() - startTime;
+        long ms = time % 1000;
+        time /= 1000;
+        long sec = time % 60;
+        time /= 60;
+        long min = time % 60;
+        time /= 60;
+        System.out.println(""
+                + (time < 10 ? "0" : "") + time
+                + ":" + (min < 10 ? "0" : "") + min
+                + ":" + (sec < 10 ? "0" : "") + sec
+                + "." + (ms < 10 ? "00" : (ms < 100 ? "0" : "")) + ms
+                + " (" + Thread.currentThread().getName() + ") " + s);
+    }
+    static void delay(int millis) {
+        try {
+            Thread.sleep(millis);
+        } catch (InterruptedException e) {}
+    }
+}
--- a/test/javax/sound/sampled/FileWriter/AlawEncoderSync.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/javax/sound/sampled/FileWriter/AlawEncoderSync.java	Tue May 08 07:34:53 2012 -0700
@@ -1,6 +1,32 @@
+/*
+ * Copyright (c) 2010, 2012, Oracle and/or its affiliates. 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
 /**
  * @test
  * @bug 6938426
+ * @bug 7058852
  * @summary Tests that Alaw encoder works properly in multithreaded environment
  * @author Alex Menkov
  */
@@ -34,7 +60,7 @@
             threads[i].start();
         }
 
-        for (int i=1; i<THREAD_COUNT; i++) {
+        for (int i=0; i<THREAD_COUNT; i++) {
             try {
                 threads[i].join();
             } catch (InterruptedException ex) {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/swing/JTabbedPane/4310381/bug4310381.html	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,6 @@
+<html>
+<body>
+<applet  code="bug4310381.class" width=150 height=150></applet>
+Observe that long Tab titles are clipped with dots at the end
+</body>
+</html> 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/swing/JTabbedPane/4310381/bug4310381.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) 2012 Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * Portions Copyright (c) 2012 IBM Corporation
+ */
+
+/*
+ * @test
+ * @bug 4310381
+ * @summary Text in multi-row/col JTabbedPane tabs can be truncated/clipped
+ * @author Charles Lee
+   @run applet/manual=yesno bug4310381.html
+ */
+
+
+import javax.swing.*;
+import java.awt.*;
+import java.lang.reflect.InvocationTargetException;
+
+public class bug4310381 extends JApplet {
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeLater(new Runnable() {
+            public void run() {
+                JFrame frame = new JFrame();
+
+                frame.setContentPane(createContentPane());
+                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+                frame.setSize(150, 200);
+                frame.setLocationRelativeTo(null);
+
+                frame.setVisible(true);
+
+            }
+        });
+    }
+
+    @Override
+    public void init() {
+        try {
+            SwingUtilities.invokeAndWait(new Runnable() {
+                @Override
+                public void run() {
+                    setContentPane(createContentPane());
+                }
+            });
+        } catch (InterruptedException | InvocationTargetException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    private static Container createContentPane() {
+        JTabbedPane tab = new JTabbedPane();
+        String a2z = "abcdefghijklmnopqrstuvwxyz";
+
+        tab.addTab("0" + a2z + a2z, new JLabel("0"));
+        tab.addTab("1" + a2z, new JLabel("1" + a2z));
+        tab.addTab("2" + a2z, new JLabel("2" + a2z));
+        tab.addTab("3", new JLabel("3" + a2z)); // The last tab in Metal isn't truncated, that's ok
+
+        return tab;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/swing/border/Test7149090.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7149090
+   @summary Nimbus:BorderFactory.createTitledBorder() the DEFAULT position of a title is not the same as the TOP
+   @author Pavel Porvatov
+*/
+
+import javax.swing.*;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Test7149090 {
+    private static final Object[][] DEFAULT_TITLE_POSITIONS = {
+            {"Metal", TitledBorder.TOP},
+            {"Motif", TitledBorder.TOP},
+            {"Windows", TitledBorder.TOP},
+            {"Nimbus", TitledBorder.ABOVE_TOP},
+    };
+
+    public static void main(String[] args) throws Exception {
+        for (UIManager.LookAndFeelInfo lookAndFeel : UIManager.getInstalledLookAndFeels()) {
+            for (Object[] defaultTitlePosition : DEFAULT_TITLE_POSITIONS) {
+                if (defaultTitlePosition[0].equals(lookAndFeel.getName())) {
+                    UIManager.setLookAndFeel(lookAndFeel.getClassName());
+
+                    final int expectedPosition = (Integer) defaultTitlePosition[1];
+
+                    SwingUtilities.invokeAndWait(new Runnable() {
+                        @Override
+                        public void run() {
+                            List<TitledBorder> borders = new ArrayList<>();
+
+                            borders.add(BorderFactory.createTitledBorder(new EmptyBorder(0, 0, 0, 0), "Title"));
+
+                            try {
+                                Method getPositionMethod = TitledBorder.class.getDeclaredMethod("getPosition");
+
+                                getPositionMethod.setAccessible(true);
+
+                                for (TitledBorder border : borders) {
+                                    int position = (Integer) getPositionMethod.invoke(border);
+
+                                    if (position != expectedPosition) {
+                                        throw new RuntimeException("Invalid title position");
+                                    }
+                                }
+                            } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
+                                throw new RuntimeException(e);
+                            }
+                        }
+                    });
+
+                    System.out.println("Test passed for LookAndFeel " + lookAndFeel.getName());
+                }
+            }
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/swing/plaf/synth/7158712/bug7158712.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,116 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7158712
+   @summary Synth Property "ComboBox.popupInsets" is ignored
+   @library ../../../regtesthelpers
+   @author Pavel Porvatov
+*/
+
+import sun.awt.SunToolkit;
+
+import javax.swing.*;
+import javax.swing.plaf.basic.BasicComboPopup;
+import javax.swing.plaf.synth.SynthLookAndFeel;
+import java.awt.*;
+import java.awt.event.InputEvent;
+import java.io.ByteArrayInputStream;
+import java.util.concurrent.Callable;
+
+public class bug7158712 {
+    private static final String SYNTH_XML = "<synth>" +
+            "    <style id=\"all\">" +
+            "      <font name=\"Dialog\" size=\"12\"/>" +
+            "    </style>" +
+            "    <bind style=\"all\" type=\"REGION\" key=\".*\"/>" +
+            "    <style id=\"arrowButton\">" +
+            "      <property key=\"ArrowButton.size\" type=\"integer\" value=\"18\"/>" +
+            "    </style>" +
+            "    <bind style=\"arrowButton\" type=\"region\" key=\"ArrowButton\"/>" +
+            "    <style id=\"comboBox\">" +
+            "      <property key=\"ComboBox.popupInsets\" type=\"insets\" value=\"-5 -5 5 -5\"/>" +
+            "    </style>" +
+            "    <bind style=\"comboBox\" type=\"region\" key=\"ComboBox\"/>" +
+            "</synth>";
+
+    private static JComboBox<String> comboBox;
+
+    public static void main(String[] args) throws Exception {
+        Robot robot = new Robot();
+
+        robot.setAutoDelay(500);
+
+        SynthLookAndFeel laf = new SynthLookAndFeel();
+
+        laf.load(new ByteArrayInputStream(SYNTH_XML.getBytes("UTF8")), bug7158712.class);
+
+        UIManager.setLookAndFeel(laf);
+
+        EventQueue.invokeAndWait(new Runnable() {
+            public void run() {
+                comboBox = new JComboBox<>(
+                        new String[]{"Very Looooooooooooooooooooong Text Item 1", "Item 2"});
+
+                JFrame frame = new JFrame();
+
+                frame.add(comboBox, BorderLayout.NORTH);
+                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+                frame.setSize(new Dimension(400, 300));
+                frame.setLocationRelativeTo(null);
+                frame.setVisible(true);
+            }
+        });
+
+        ((SunToolkit) Toolkit.getDefaultToolkit()).realSync();
+
+        Point comboBoxLocation = Util.invokeOnEDT(new Callable<Point>() {
+            @Override
+            public Point call() throws Exception {
+                return comboBox.getLocationOnScreen();
+            }
+        });
+
+        robot.mouseMove(comboBoxLocation.x, comboBoxLocation.y);
+        robot.mousePress(InputEvent.BUTTON1_MASK);
+        robot.mouseRelease(InputEvent.BUTTON1_MASK);
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                BasicComboPopup popup = (BasicComboPopup) comboBox.getAccessibleContext().getAccessibleChild(0);
+
+                Point popupPoint = popup.getLocationOnScreen();
+                Point comboBoxPoint = comboBox.getLocationOnScreen();
+
+                if (comboBoxPoint.x - 5 != popupPoint.x ||
+                        comboBoxPoint.y + comboBox.getHeight() - 5 != popupPoint.y) {
+                    throw new RuntimeException("Invalid popup coordinates. Popup location: " + popupPoint +
+                            ", comboBox location: " + comboBoxPoint);
+                }
+
+                System.out.println("Test bug7158712 passed");
+            }
+        });
+    }
+}
--- a/test/javax/swing/regtesthelpers/Util.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/javax/swing/regtesthelpers/Util.java	Tue May 08 07:34:53 2012 -0700
@@ -24,8 +24,10 @@
 import javax.swing.*;
 import java.awt.*;
 import java.awt.image.BufferedImage;
+import java.util.ArrayList;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.concurrent.Callable;
 
 /**
  * <p>This class contains utilities useful for regression testing.
@@ -153,4 +155,31 @@
             robot.keyRelease(keys[i]);
         }
     }
+
+    /**
+     * Invokes the <code>task</code> on the EDT thread.
+     *
+     * @return result of the <code>task</code>
+     */
+    public static <T> T invokeOnEDT(final Callable<T> task) throws Exception {
+        final List<T> result = new ArrayList<>(1);
+        final Exception[] exception = new Exception[1];
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                try {
+                    result.add(task.call());
+                } catch (Exception e) {
+                    exception[0] = e;
+                }
+            }
+        });
+
+        if (exception[0] != null) {
+            throw exception[0];
+        }
+
+        return result.get(0);
+    }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/javax/swing/text/AbstractDocument/7146146/bug7146146.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,77 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7146146
+   @summary Deadlock between subclass of AbstractDocument and UndoManager
+   @author Pavel Porvatov
+*/
+
+import javax.swing.text.BadLocationException;
+import javax.swing.text.PlainDocument;
+import javax.swing.text.StringContent;
+import javax.swing.undo.UndoManager;
+
+public class bug7146146 {
+    public static void main(String[] args) throws Exception {
+        for (int i = 0; i < 1000; i++) {
+            System.out.print("Iteration " + i);
+
+            test();
+
+            System.out.print(" passed");
+        }
+    }
+
+    private static void test() throws Exception {
+        final PlainDocument doc = new PlainDocument(new StringContent());
+        final UndoManager undoManager = new UndoManager();
+
+        doc.addUndoableEditListener(undoManager);
+        doc.insertString(0, "<Test 1>", null);
+
+        Thread t1 = new Thread("Thread 1") {
+            @Override
+            public void run() {
+                try {
+                    doc.insertString(0, "<Test 2>", null);
+                } catch (BadLocationException e) {
+                    throw new RuntimeException(e);
+                }
+            }
+        };
+
+        Thread t2 = new Thread("Thread 2") {
+            @Override
+            public void run() {
+                undoManager.undo();
+            }
+        };
+
+        t1.start();
+        t2.start();
+
+        t1.join();
+        t2.join();
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/awt/image/ImageWatched/AddNoLeak.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.awt.image.ImageObserver;
+import java.awt.image.ImageProducer;
+import java.awt.image.ImageConsumer;
+import java.awt.Image;
+import java.awt.Container;
+
+/* @test 1.0 12/01/17
+   @bug 7104151
+   @summary Make sure that we don't leak image observers (or related objects)
+   @run main/othervm AddNoLeak
+   @author David Buck
+*/
+
+public class AddNoLeak {
+    public static void main(String[] args) {
+        System.setProperty("java.awt.headless", "true");
+        Container cont = new Container();
+        Image img = cont.createImage(new DummyImageSource());
+        for(int i=0;i < 15000;i++) {
+            img.getWidth(new ImageObserver() {
+                public boolean imageUpdate(Image img, int infoflags, int x, int y, int width, int height) {return false;}
+            });
+            if (i % 100 == 0) {
+                System.gc();
+            }
+        }
+    }
+
+    private static class DummyImageSource implements ImageProducer {
+        public void addConsumer(ImageConsumer ic){}
+        public boolean isConsumer(ImageConsumer ic){return false;}
+        public void removeConsumer(ImageConsumer ic){}
+        public void startProduction(ImageConsumer ic){}
+        public void requestTopDownLeftRightResend(ImageConsumer ic){}
+    }
+}
--- a/test/sun/java2d/X11SurfaceData/SharedMemoryPixmapsTest/SharedMemoryPixmapsTest.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/java2d/X11SurfaceData/SharedMemoryPixmapsTest/SharedMemoryPixmapsTest.java	Tue May 08 07:34:53 2012 -0700
@@ -54,8 +54,12 @@
     public SharedMemoryPixmapsTest() {
         testFrame = new Frame("SharedMemoryPixmapsTest");
         testFrame.add(new TestComponent());
+        testFrame.setUndecorated(true);
+        testFrame.setResizable(false);
         testFrame.pack();
+        testFrame.setLocationRelativeTo(null);
         testFrame.setVisible(true);
+        testFrame.toFront();
     }
 
     public static void main(String[] args) {
--- a/test/sun/net/www/protocol/jar/B4957695.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/net/www/protocol/jar/B4957695.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -24,8 +24,6 @@
 /**
  * @test
  * @bug 4957695
- * @library ../../httptest/
- * @build HttpCallback HttpServer ClosedChannelList HttpTransaction AbstractCallback
  * @summary URLJarFile.retrieve does not delete tmpFile on IOException
  */
 
@@ -34,8 +32,56 @@
 
 public class B4957695 {
 
-    static int count = 0;
-    static boolean error = false;
+    static Server server;
+
+    static class Server extends Thread {
+        final ServerSocket srv;
+        static final byte[] requestEnd = new byte[] {'\r', '\n', '\r', '\n'};
+
+        Server(ServerSocket s) {
+            srv = s;
+        }
+
+        void readOneRequest(InputStream is) throws IOException {
+            int requestEndCount = 0, r;
+            while ((r = is.read()) != -1) {
+                if (r == requestEnd[requestEndCount]) {
+                    requestEndCount++;
+                    if (requestEndCount == 4) {
+                        break;
+                    }
+                } else {
+                    requestEndCount = 0;
+                }
+            }
+        }
+
+        public void run() {
+            try (Socket s = srv.accept()) {
+                // read HTTP request from client
+                readOneRequest(s.getInputStream());
+                try (OutputStreamWriter ow =
+                     new OutputStreamWriter((s.getOutputStream()))) {
+                    FileInputStream fin = new FileInputStream("foo1.jar");
+                    int length = fin.available();
+                    byte[] b = new byte[length-10];
+                    fin.read(b, 0, length-10);
+                    ow.write("HTTP/1.0 200 OK\r\n");
+
+                    // Note: The client expects length bytes.
+                    ow.write("Content-Length: " + length + "\r\n");
+                    ow.write("Content-Type: text/html\r\n");
+                    ow.write("\r\n");
+
+                    // Note: The (buggy) server only sends length-10 bytes.
+                    ow.write(new String(b));
+                    ow.flush();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
 
     static void read (InputStream is) throws IOException {
         int c,len=0;
@@ -45,32 +91,13 @@
         System.out.println ("read " + len + " bytes");
     }
 
-    static class CallBack extends AbstractCallback {
-
-        public void request (HttpTransaction req, int count) {
-            try {
-                System.out.println ("Request received");
-                req.setResponseEntityBody (new FileInputStream ("foo1.jar"));
-                System.out.println ("content length " + req.getResponseHeader (
-                        "Content-length"
-                ));
-                req.sendPartialResponse (200, "Ok");
-                req.abortiveClose();
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-        }
-
-    };
-
-    static HttpServer server;
-
     public static void main (String[] args) throws Exception {
         String tmpdir = System.getProperty("java.io.tmpdir");
         String[] list1 = listTmpFiles(tmpdir);
-        //server = new HttpServer (new CallBack(), 10, 1, 0);
-        server = new HttpServer (new CallBack(), 1, 5, 0);
-        int port = server.getLocalPort();
+        ServerSocket serverSocket = new ServerSocket(0);
+        server = new Server(serverSocket);
+        server.start();
+        int port = serverSocket.getLocalPort();
         System.out.println ("Server: listening on port: " + port);
         URL url = new URL ("jar:http://localhost:"+port+"!/COPYRIGHT");
         try {
@@ -81,14 +108,12 @@
         } catch (IOException e) {
             System.out.println ("Received IOException as expected");
         }
-        server.terminate();
         String[] list2 = listTmpFiles(tmpdir);
         if (!sameList (list1, list2)) {
             throw new RuntimeException ("some jar_cache files left behind");
         }
     }
 
-
     static String[] listTmpFiles (String d) {
         File dir = new File (d);
         return dir.list (new FilenameFilter () {
--- a/test/sun/nio/ch/SelProvider.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/nio/ch/SelProvider.java	Tue May 08 07:34:53 2012 -0700
@@ -38,20 +38,9 @@
         if ("SunOS".equals(osname)) {
             expected = "sun.nio.ch.DevPollSelectorProvider";
         } else if ("Linux".equals(osname)) {
-            String[] vers = osver.split("\\.", 0);
-            if (vers.length >= 2) {
-                int major = Integer.parseInt(vers[0]);
-                int minor = Integer.parseInt(vers[1]);
-                if (major > 2 || (major == 2 && minor >= 6)) {
-                    expected = "sun.nio.ch.EPollSelectorProvider";
-                } else {
-                    expected = "sun.nio.ch.PollSelectorProvider";
-                }
-            } else {
-                throw new RuntimeException("Test does not recognize this operating system");
-            }
+            expected = "sun.nio.ch.EPollSelectorProvider";
         } else if (osname.startsWith("Mac OS")) {
-            expected = "sun.nio.ch.PollSelectorProvider";
+            expected = "sun.nio.ch.KQueueSelectorProvider";
         } else
             return;
         if (!spName.equals(expected))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/nio/cs/TestSJIS0213_SM.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7152690
+   @summary Initialize SJIS_0213 charset with SecurityManager enabled
+ */
+public class TestSJIS0213_SM {
+    public static void main(String[] args) throws Throwable {
+        SecurityManager sm = System.getSecurityManager();
+        if (sm == null) {
+            System.setSecurityManager(new SecurityManager());
+        }
+        java.nio.charset.Charset.forName("SJIS_0213");
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/rmi/rmic/classpath/RMICClassPathTest.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,55 @@
+/*
+ * Copyright (c) 2012 Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * Portions Copyright (c) 2012 IBM Corporation
+ */
+
+/* @test
+ * @bug 6610897
+ * @summary New constructor in sun.tools.java.ClassPath builds a path using
+ *          File.separator instead of File.pathSeparator
+ * @run main RMICClassPathTest
+ */
+
+import java.io.File;
+
+import sun.rmi.rmic.BatchEnvironment;
+
+public class RMICClassPathTest {
+    public static void main(String[] args) throws Exception {
+        String sysPath = "/home/~user/jdk/jre/lib/rt.jar";
+        String extDir = "";
+        String clPath = "/home/~user/user.jar" + File.pathSeparator +
+            "/home/~user/user2.jar" + File.pathSeparator +
+            "/home/~user/user3.jar";
+
+        String cpStr = BatchEnvironment.createClassPath(clPath, sysPath, extDir).toString();
+
+        String[] paths = cpStr.split(File.pathSeparator);
+
+        if (paths.length != 4) {
+            throw new Exception("ClassPath length is not correct: the expected length is 4 and the actual length is " + paths.length);
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/security/krb5/ccache/EmptyCC.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7158329
+ * @summary NPE in sun.security.krb5.Credentials.acquireDefaultCreds()
+ * @compile -XDignore.symbol.file EmptyCC.java
+ * @run main EmptyCC
+ */
+import java.io.File;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import sun.security.krb5.Credentials;
+import sun.security.krb5.PrincipalName;
+import sun.security.krb5.internal.ccache.CredentialsCache;
+
+public class EmptyCC {
+    public static void main(String[] args) throws Exception {
+        final PrincipalName pn = new PrincipalName("dummy@FOO.COM");
+        final String ccache = "tmpcc";
+
+        if (args.length == 0) {
+            // Main process, write the ccache and launch sub process
+            CredentialsCache cache = CredentialsCache.create(pn, ccache);
+            cache.save();
+
+            // java -cp $test.classes EmptyCC readcc
+            ProcessBuilder pb = new ProcessBuilder(
+                    new File(new File(System.getProperty("java.home"), "bin"),
+                        "java").getPath(),
+                    "-cp",
+                    System.getProperty("test.classes"),
+                    "EmptyCC",
+                    "readcc"
+                    );
+
+            pb.environment().put("KRB5CCNAME", ccache);
+            pb.redirectErrorStream(true);
+
+            Process p = pb.start();
+            try (InputStream ins = p.getInputStream()) {
+                byte[] buf = new byte[8192];
+                int n;
+                while ((n = ins.read(buf)) > 0) {
+                    System.out.write(buf, 0, n);
+                }
+            }
+            if (p.waitFor() != 0) {
+                throw new Exception("Test failed");
+            }
+        } else {
+            // Sub process, read the ccache
+            String cc = System.getenv("KRB5CCNAME");
+            if (!cc.equals(ccache)) {
+                throw new Exception("env not set correctly");
+            }
+            Credentials.acquireTGTFromCache(pn, null);
+        }
+    }
+}
--- a/test/sun/security/pkcs11/PKCS11Test.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/security/pkcs11/PKCS11Test.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2012, Oracle and/or its affiliates. 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
@@ -129,6 +129,13 @@
     }
 
     private static String PKCS11_BASE;
+    static {
+        try {
+            PKCS11_BASE = getBase();
+        } catch (Exception e) {
+            // ignore
+        }
+    }
 
     private final static String PKCS11_REL_PATH = "sun/security/pkcs11";
 
@@ -160,20 +167,18 @@
         }
         String osid = osName + "-"
                 + props.getProperty("os.arch") + "-" + props.getProperty("sun.arch.data.model");
-        String ostype = osMap.get(osid);
-        if (ostype == null) {
+        String nssLibDir = osMap.get(osid);
+        if (nssLibDir == null) {
             System.out.println("Unsupported OS, skipping: " + osid);
             return null;
-//          throw new Exception("Unsupported OS " + osid);
+//          throw new Exception("Unsupported OS " + osName);
         }
-        if (ostype.length() == 0) {
+        if (nssLibDir.length() == 0) {
             System.out.println("NSS not supported on this platform, skipping test");
             return null;
         }
-        String base = getBase();
-        String libdir = base + SEP + "nss" + SEP + "lib" + SEP + ostype + SEP;
-        System.setProperty("pkcs11test.nss.libdir", libdir);
-        return libdir;
+        System.setProperty("pkcs11test.nss.libdir", nssLibDir);
+        return nssLibDir;
     }
 
     protected static void safeReload(String lib) throws Exception {
@@ -191,6 +196,8 @@
         safeReload(libdir + System.mapLibraryName(NSPR_PREFIX + "nspr4"));
         safeReload(libdir + System.mapLibraryName(NSPR_PREFIX + "plc4"));
         safeReload(libdir + System.mapLibraryName(NSPR_PREFIX + "plds4"));
+        safeReload(libdir + System.mapLibraryName("sqlite3"));
+        safeReload(libdir + System.mapLibraryName("nssutil3"));
         return true;
     }
 
@@ -229,15 +236,15 @@
 
     private static final Map<String,String> osMap;
 
+    // Location of the NSS libraries on each supported platform
     static {
         osMap = new HashMap<String,String>();
-        osMap.put("SunOS-sparc-32", "solaris-sparc");
-        osMap.put("SunOS-sparcv9-64", "solaris-sparcv9");
-        osMap.put("SunOS-x86-32", "solaris-i586");
-        osMap.put("SunOS-amd64-64", "solaris-amd64");
-        osMap.put("Linux-i386-32", "linux-i586");
-        osMap.put("Linux-amd64-64", "linux-amd64");
-        osMap.put("Windows-x86-32", "windows-i586");
+        osMap.put("SunOS-sparc-32", "/usr/lib/mps/");
+        osMap.put("SunOS-sparcv9-64", "/usr/lib/mps/64/");
+        osMap.put("SunOS-x86-32", "/usr/lib/mps/");
+        osMap.put("SunOS-amd64-64", "/usr/lib/mps/64/");
+        osMap.put("Linux-i386-32", "/usr/lib/");
+        osMap.put("Linux-amd64-64", "/usr/lib64/");
     }
 
     private final static char[] hexDigits = "0123456789abcdef".toCharArray();
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so has changed
Binary file test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll has changed
Binary file test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/NullGetAcceptedIssuers.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7142172
+ * @summary Custom TrustManagers that return null for getAcceptedIssuers
+ *          will NPE.
+ *     SunJSSE does not support dynamic system properties, no way to
+ *     re-use system properties in samevm/agentvm mode.
+ * @run main/othervm NullGetAcceptedIssuers
+ */
+
+import javax.net.ssl.*;
+
+public class NullGetAcceptedIssuers {
+
+    public static void main(String[] args) throws Exception {
+        SSLContext sslContext;
+
+        // Create a trust manager that does not validate certificate chains
+        TrustManager[] trustAllCerts =
+            new TrustManager[] {new X509TrustManager() {
+
+                public void checkClientTrusted(
+                        java.security.cert.X509Certificate[] certs,
+                        String authType) {
+                }
+
+                public void checkServerTrusted(
+                        java.security.cert.X509Certificate[] certs,
+                        String authType) {
+                }
+
+                // API says empty array, but some custom TMs are
+                // returning null.
+                public java.security.cert.X509Certificate[]
+                        getAcceptedIssuers() {
+                    return null;
+                }
+            }};
+
+        sslContext = javax.net.ssl.SSLContext.getInstance("SSL");
+        sslContext.init(null, trustAllCerts, null);
+    }
+}
--- a/test/sun/security/tools/keytool/autotest.sh	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/security/tools/keytool/autotest.sh	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2012, Oracle and/or its affiliates. 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
@@ -50,7 +50,7 @@
     ARCH=`isainfo`
     case "$ARCH" in
       sparc* )
-        PF="solaris-sparc"
+        NSSDIR="/usr/lib/mps"
         ;;
       * )
         echo "Will not run test on: Solaris ${ARCH}"
@@ -64,7 +64,7 @@
     FS="/"
     case "$ARCH" in
       i[3-6]86 )
-        PF="linux-i586"
+        NSSDIR="/usr/lib"
         ;;
       * )
         echo "Will not run test on: Linux ${ARCH}"
@@ -91,7 +91,7 @@
 chmod u+w cert8.db
 
 echo | ${TESTJAVA}${FS}bin${FS}java -Dnss \
-   -Dnss.lib=${NSS}${FS}lib${FS}${PF}${FS}${LIBNAME} \
+   -Dnss.lib=${NSSDIR}${FS}${LIBNAME} \
    KeyToolTest
 status=$?
 
--- a/test/sun/text/resources/LocaleData	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/text/resources/LocaleData	Tue May 08 07:34:53 2012 -0700
@@ -574,7 +574,6 @@
 FormatData/es_PA/NumberElements/0=.
 FormatData/es_PA/NumberElements/1=,
 FormatData/es_PA/NumberElements/2=;
-CurrencyNames/es_PE/PEN=S/
 FormatData/es_PE/NumberPatterns/0=#,##0.###;-#,##0.###
 # FormatData/es_PE/NumberPatterns/1=S/#,##0.00;S/-#,##0.00 # Changed; see bug 4122840
 FormatData/es_PE/NumberPatterns/2=#,##0%
@@ -7026,4 +7025,7 @@
 CurrencyNames//xsu=Sucre
 CurrencyNames//xua=ADB Unit of Account
 LocaleNames//SS=South Sudan
-LocaleNames/en/SS=South Sudan
\ No newline at end of file
+LocaleNames/en/SS=South Sudan
+
+# bug 7028073
+CurrencyNames/es_PE/PEN=S/.
--- a/test/sun/text/resources/LocaleDataTest.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/sun/text/resources/LocaleDataTest.java	Tue May 08 07:34:53 2012 -0700
@@ -34,7 +34,7 @@
  *      6509039 6609737 6610748 6645271 6507067 6873931 6450945 6645268 6646611
  *      6645405 6650730 6910489 6573250 6870908 6585666 6716626 6914413 6916787
  *      6919624 6998391 7019267 7020960 7025837 7020583 7036905 7066203 7101495
- *      7003124 7085757
+ *      7003124 7085757 7028073
  * @summary Verify locale data
  *
  */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/tools/jcmd/dcmd-big-script.txt	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,95 @@
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
+VM.version
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/tools/jcmd/jcmd-big-script.sh	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,70 @@
+#!/bin/sh
+
+#
+# Copyright (c) 2012, Oracle and/or its affiliates. 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.
+#
+# 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+
+# @test
+# @bug 7154822
+# @summary test if we can send a file over 1024 bytes large via jcmd -f
+# @author David Buck
+#
+# @library ../common
+# @build SimpleApplication ShutdownSimpleApplication
+# @run shell jcmd-big-script.sh
+
+. ${TESTSRC}/../common/CommonSetup.sh
+. ${TESTSRC}/../common/ApplicationSetup.sh
+
+# Start application and use PORTFILE for coordination
+PORTFILE="${TESTCLASSES}"/shutdown.port
+startApplication SimpleApplication "${PORTFILE}"
+
+failed=0;
+
+# -f <script>
+rm -f jcmd.out 2>/dev/null
+set +e # even if jcmd fails, we do not want abort the script yet.
+${JCMD} -J-XX:+UsePerfData $appJavaPid -f ${TESTSRC}/dcmd-big-script.txt > jcmd.out 2>&1
+status="$?"
+set -e
+if [ "$status" != 0 ]; then
+  echo "jcmd command returned non-zero exit code (status=$status). Failed."
+  failed=1;
+fi
+cat jcmd.out
+set +e # if the test passes, grep will "fail" with an exit code of 1
+grep Exception jcmd.out > /dev/null 2>&1
+status="$?"
+set -e
+if [ "$status" = 0 ]; then
+  echo "Output of \"jcmd [pid] -f dcmd-big-script.txt\" contains string \"Exception\". Failed."
+  failed=1;
+fi
+
+# clean up
+rm -f jcmd.out 2>/dev/null
+stopApplication "${PORTFILE}"
+waitForApplication
+
+exit $failed
--- a/test/tools/launcher/TestHelper.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/tools/launcher/TestHelper.java	Tue May 08 07:34:53 2012 -0700
@@ -54,6 +54,7 @@
     static final File TEST_SOURCES_DIR;
 
     static final String JAVAHOME = System.getProperty("java.home");
+    static final String JAVA_BIN;
     static final boolean isSDK = JAVAHOME.endsWith("jre");
     static final String javaCmd;
     static final String javawCmd;
@@ -83,6 +84,7 @@
     static final String JAVA_FILE_EXT  = ".java";
     static final String CLASS_FILE_EXT = ".class";
     static final String JAR_FILE_EXT   = ".jar";
+    static final String EXE_FILE_EXT   = ".exe";
     static final String JLDEBUG_KEY     = "_JAVA_LAUNCHER_DEBUG";
     static final String EXPECTED_MARKER = "TRACER_MARKER:About to EXEC";
 
@@ -110,6 +112,7 @@
         compiler = ToolProvider.getSystemJavaCompiler();
         File binDir = (isSDK) ? new File((new File(JAVAHOME)).getParentFile(), "bin")
             : new File(JAVAHOME, "bin");
+        JAVA_BIN = binDir.getAbsolutePath();
         File javaCmdFile = (isWindows)
                 ? new File(binDir, "java.exe")
                 : new File(binDir, "java");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/tools/launcher/ToolsOpts.java	Tue May 08 07:34:53 2012 -0700
@@ -0,0 +1,217 @@
+/*
+ * Copyright (c) 2012, Oracle and/or its affiliates. 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.
+ *
+ * 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @summary Test options patterns for javac,javah,javap and javadoc using
+ * javac as a test launcher. Create a dummy javac and intercept options to check
+ * reception of options as passed through the launcher without having to launch
+ * javac. Only -J and -cp ./* options should be consumed by the launcher.
+ * @run main ToolsOpts
+ * @author ssides
+ */
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ToolsOpts extends TestHelper {
+    static final String JBCP_PREPEND = "-J-Xbootclasspath/p:";
+    private static File testJar = null;
+    static String[][] optionPatterns = {
+        {"-J-Xmx128m"},
+        {"-J-version"},
+        {"-J-XshowSettings:vm"},
+        {"-J-Xdiag"},
+        {"-J-showversion"},
+        {"-J-version", "-option"},
+        {"-option"},
+        {"-option:sub"},
+        {"-option:sub-"},
+        {"-option:sub1,sub2"}, // -option:list
+        {"-option:{sub1,sub2,sub3}"}, // -option:{list}
+        {"-option:{{sub1,sub2,sub3}}"},// -option:{{list}}
+        {"-option/c:/export/date/tmp"},
+        {"-option=value"},
+        {"-Dpk1.pk2.pk3"}, // dot in option
+        {"-Dpk1.pk2=value"}, // dot in option followed by =value
+        {"@<filename>"},
+        {"-option", "http://site.com", "http://site.org"},
+        {"-option", "name", "p1:p2.."},
+        {"-All these non-options show launchers pass options as is to tool."},
+        {"-option"},
+        {"-option:sub"},
+        {"-option:sub-"},
+        {"-option", "<path>"},
+        {"-option", "<file>"},
+        {"-option", "<dir>"},
+        {"-option", "http://a/b/c/g;x?y#s"},
+        {"-option", "<html code>"},
+        {"-option", "name1:name2"},
+        {"-option", "3"},
+        {"option1", "-J-version", "option2"},
+        {"option1", "-J-version", "-J-XshowSettings:vm", "option2"},};
+
+    static void init() throws IOException {
+        if (testJar != null) {
+            return;
+        }
+
+        // A tool which simulates com.sun.tools.javac.Main argument processing,
+        // intercepts options passed via the javac launcher.
+        final String mainJava = "Main" + JAVA_FILE_EXT;
+        testJar = new File("test" + JAR_FILE_EXT);
+        List<String> contents = new ArrayList<>();
+        contents.add("package com.sun.tools.javac;");
+        contents.add("public class Main {");
+        contents.add("    public static void main(String... args) {\n");
+        contents.add("       for (String x : args) {\n");
+        contents.add("           if(x.compareTo(\" \")!=0)\n");
+        contents.add("               System.out.println(x);\n");
+        contents.add("       }\n");
+        contents.add("    }\n");
+        contents.add("}\n");
+        createFile(new File(mainJava), contents);
+
+        // compile and jar Main.java into test.jar
+        compile("-d", ".", mainJava);
+            createJar("cvf", testJar.getAbsolutePath(), "com");
+        }
+
+    static void pass(String msg) {
+        System.out.println("pass: " + msg);
+    }
+
+    static void errout(String msg) {
+        System.err.println(msg);
+    }
+
+    // Return position of -J option or -1 is does not contain a -J option.
+    static int indexOfJoption(String[] opts) {
+        for (int i = 0; i < opts.length; i++) {
+            if (opts[i].startsWith("-J")) {
+                return i;
+            }
+        }
+        return -1;
+    }
+
+    /*
+     * Check that J options a) are not passed to tool, and b) do the right thing,
+     * that is, they should be passed to java launcher and work as expected.
+     */
+    static void checkJoptionOutput(TestResult tr, String[] opts) throws IOException {
+        // Check -J-version options are not passed but do what they should.
+        String jopts = "";
+        for (String pat : opts) {
+            jopts = jopts.concat(pat + " ");
+            if (tr.contains("-J")) {
+                throw new RuntimeException(
+                        "failed: output should not contain option " + pat);
+            }
+            if (pat.compareTo("-J-version") == 0 ||
+                    pat.compareTo("-J-showversion") == 0) {
+                if (!tr.contains("java version") &&
+                        !tr.contains("openjdk version")) {
+                    throw new RuntimeException("failed: " + pat +
+                            " should display a version string.");
+                }
+            } else if (pat.compareTo("-J-XshowSettings:VM") == 0) {
+                if (!tr.contains("VM settings")) {
+                    throw new RuntimeException("failed: " + pat +
+                            " should have display VM settings.");
+                }
+            }
+        }
+        pass("Joption check: " + jopts);
+    }
+
+    /*
+     * Feed each option pattern in optionPatterns array to javac launcher with
+     * checking program preempting javac. Check that option received by 'dummy'
+     * javac is the one passed on the command line.
+     */
+    static void runTestOptions() throws IOException {
+        init();
+        TestResult tr = null;
+        String sTestJar = testJar.getAbsolutePath();
+        int jpos = -1;
+        for (String arg[] : optionPatterns) {
+            jpos = indexOfJoption(arg);
+            //Build a cmd string for output in results reporting.
+            String cmdString = javacCmd + JBCP_PREPEND + sTestJar;
+            for (String opt : arg) {
+                cmdString = cmdString.concat(" " + opt);
+            }
+            switch (arg.length) {
+                case 1:
+                    tr = doExec(javacCmd, JBCP_PREPEND + sTestJar,
+                            arg[0]);
+                    break;
+                case 2:
+                    tr = doExec(javacCmd, JBCP_PREPEND + sTestJar,
+                            arg[0], arg[1]);
+                    break;
+                case 3:
+                    tr = doExec(javacCmd, JBCP_PREPEND + sTestJar,
+                            arg[0], arg[1], arg[2]);
+                    break;
+                case 4:
+                    tr = doExec(javacCmd, JBCP_PREPEND + sTestJar,
+                            arg[0], arg[1], arg[2], arg[3]);
+                    break;
+                default:
+                    tr = null;
+                    break;
+            }
+
+            String[] output = tr.testOutput.toArray(new String[tr.testOutput.size()]);
+            //-Joptions should not be passed to tool
+            if (jpos > -1) {
+                checkJoptionOutput(tr, arg);
+                if (tr.contains(arg[jpos])) {
+                    throw new RuntimeException(
+                            "failed! Should not have passed -J option to tool.\n"
+                            + "CMD: " + cmdString);
+                }
+            } else {
+                //check that each non -J option was passed to tool.
+                for (int i = 0; i < arg.length; i++) {
+                    if (output[i].compareTo(arg[i]) != 0) {
+                        throw new RuntimeException(
+                                "failed! CMD: " + cmdString + "\n   case:" +
+                                output[i] + " != " + arg[i]);
+                    } else {
+                        pass("check " + output[i] + " == " + arg[i]);
+                    }
+                }
+            }
+            pass(cmdString);
+        }
+    }
+
+    public static void main(String... args) throws IOException {
+        runTestOptions();
+    }
+}
--- a/test/tools/launcher/VersionCheck.java	Wed Apr 11 17:47:56 2012 -0700
+++ b/test/tools/launcher/VersionCheck.java	Tue May 08 07:34:53 2012 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2012, Oracle and/or its affiliates. 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
@@ -24,58 +24,76 @@
 /**
  * @test
  * @bug 6545058 6611182
- * @summary validate and test -version, -fullversion, and internal
+ * @summary validate and test -version, -fullversion, and internal, as well as
+ *          sanity checks if a tool can be launched.
  * @compile VersionCheck.java
  * @run main VersionCheck
  */
 
-import java.lang.*;
 import java.io.File;
-import java.io.BufferedReader;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
+import java.io.FileFilter;
 import java.util.Map;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
-import java.util.StringTokenizer;
 
-public class VersionCheck {
+public class VersionCheck extends TestHelper {
 
-    private static String javaBin;
+    // tools that do not accept -J-option
+    static final String[] BLACKLIST_JOPTION = {
+        "controlpanel",
+        "java-rmi",
+        "java-rmi.cgi",
+        "java",
+        "javaw",
+        "javaws",
+        "jcontrol",
+        "jvisualvm",
+        "packager",
+        "unpack200",
+        "wsimport"
+    };
 
-    // A known set of programs we know for sure will behave correctly.
-    private static String[] programs = new String[]{
+    // tools that do not accept -version
+    static final String[] BLACKLIST_VERSION = {
         "appletviewer",
+        "controlpanel",
         "extcheck",
-        "idlj",
         "jar",
         "jarsigner",
-        "javac",
+        "java-rmi",
+        "java-rmi.cgi",
         "javadoc",
-        "javah",
-        "javap",
+        "javaws",
+        "jcmd",
         "jconsole",
-        "jdb",
-        "jhat",
+        "jcontrol",
         "jinfo",
         "jmap",
         "jps",
+        "jrunscript",
+        "jsadebugd",
         "jstack",
         "jstat",
         "jstatd",
+        "jvisualvm",
         "keytool",
+        "kinit",
+        "klist",
+        "ktab",
         "native2ascii",
         "orbd",
         "pack200",
+        "packager",
         "policytool",
         "rmic",
         "rmid",
         "rmiregistry",
-        "schemagen",
+        "schemagen", // returns error code 127
         "serialver",
         "servertool",
         "tnameserv",
+        "unpack200",
         "wsgen",
         "wsimport",
         "xjc"
@@ -85,53 +103,11 @@
     static String refVersion;
     static String refFullVersion;
 
-    private static List<String> getProcessStreamAsList(boolean javaDebug,
-                                                       String... argv) {
-        List<String> out = new ArrayList<String>();
-        List<String> javaCmds = new ArrayList<String>();
-
-        String prog = javaBin + File.separator + argv[0];
-        if (System.getProperty("os.name").startsWith("Windows")) {
-            prog = prog.concat(".exe");
-        }
-        javaCmds.add(prog);
-        for (int i = 1; i < argv.length; i++) {
-            javaCmds.add(argv[i]);
-        }
-
-        ProcessBuilder pb = new ProcessBuilder(javaCmds);
-        Map<String, String> env = pb.environment();
-        if (javaDebug) {
-            env.put("_JAVA_LAUNCHER_DEBUG", "true");
-        }
-        try {
-            Process p = pb.start();
-            BufferedReader r = (javaDebug) ?
-                new BufferedReader(new InputStreamReader(p.getInputStream())) :
-                new BufferedReader(new InputStreamReader(p.getErrorStream())) ;
-
-            String s = r.readLine();
-            while (s != null) {
-                out.add(s.trim());
-                s = r.readLine();
-            }
-            p.waitFor();
-            p.destroy();
-        } catch (Exception ex) {
-            ex.printStackTrace();
-            throw new RuntimeException(ex.getMessage());
-        }
-        return out;
-    }
-
     static String getVersion(String... argv) {
-        List<String> alist = getProcessStreamAsList(false, argv);
-        if (alist.size() == 0) {
-            throw new AssertionError("unexpected process returned null");
-        }
+        TestHelper.TestResult tr = doExec(argv);
         StringBuilder out = new StringBuilder();
         // remove the HotSpot line
-        for (String x : alist) {
+        for (String x : tr.testOutput) {
             if (!x.matches(".*Client.*VM.*|.*Server.*VM.*")) {
                 out = out.append(x + "\n");
             }
@@ -139,9 +115,28 @@
         return out.toString();
     }
 
-    static boolean compareVersionStrings() {
+    /*
+     * this tests if the tool can take a version string and returns
+     * a 0 exit code, it is not possible to validate the contents
+     * of the -version output as they are inconsistent.
+     */
+    static boolean testToolVersion() {
+        TestResult tr = null;
+        TestHelper.testExitValue = 0;
+        for (File f : new File(JAVA_BIN).listFiles(new ToolFilter(BLACKLIST_VERSION))) {
+            String x = f.getAbsolutePath();
+            System.out.println("Testing (-version): " + x);
+            tr = doExec(x, "-version");
+            tr.checkPositive();
+        }
+        return TestHelper.testExitValue == 0;
+    }
+
+    static boolean compareJVersionStrings() {
         int failcount = 0;
-        for (String x : programs) {
+        for (File f : new File(JAVA_BIN).listFiles(new ToolFilter(BLACKLIST_JOPTION))) {
+            String x = f.getAbsolutePath();
+            System.out.println("Testing (-J-version): " + x);
             String testStr;
 
             testStr = getVersion(x, "-J-version");
@@ -185,8 +180,14 @@
         String expectedDotVersion = "dotversion:" + jdkMajor + "." + jdkMinor;
         String expectedFullVersion = "fullversion:" + bStr;
 
-        List<String> alist = getProcessStreamAsList(true, "java", "-version");
-
+        Map<String, String> envMap = new HashMap<>();
+        envMap.put(TestHelper.JLDEBUG_KEY, "true");
+        TestHelper.TestResult tr = doExec(envMap, javaCmd, "-version");
+        List<String> alist = new ArrayList<>();
+        alist.addAll(tr.testOutput);
+        for (String x : tr.testOutput) {
+            alist.add(x.trim());
+        }
         if (!alist.contains(expectedDotVersion)) {
             System.out.println("Error: could not find " + expectedDotVersion);
             failcount++;
@@ -202,21 +203,46 @@
 
     // Initialize
     static void init() {
-        String javaHome = System.getProperty("java.home");
-        if (javaHome.endsWith("jre")) {
-            javaHome = new File(javaHome).getParent();
-        }
-        javaBin = javaHome + File.separator + "bin";
-        refVersion = getVersion("java", "-version");
-        refFullVersion = getVersion("java", "-fullversion");
+        refVersion = getVersion(javaCmd, "-version");
+        refFullVersion = getVersion(javaCmd, "-fullversion");
     }
 
     public static void main(String[] args) {
         init();
-        if (compareVersionStrings() && compareInternalStrings()) {
+        if (compareJVersionStrings() &&
+                compareInternalStrings() &&
+                testToolVersion()) {
             System.out.println("All Version string comparisons: PASS");
         } else {
             throw new AssertionError("Some tests failed");
         }
     }
+
+    static class ToolFilter implements FileFilter {
+        final Iterable<String> exclude ;
+        protected ToolFilter(String... exclude) {
+            List<String> tlist = new ArrayList<>();
+            this.exclude = tlist;
+            for (String x : exclude) {
+                String str = x + ((isWindows) ? EXE_FILE_EXT : "");
+                tlist.add(str.toLowerCase());
+            }
+        }
+        @Override
+        public boolean accept(File pathname) {
+            if (!pathname.isFile() || !pathname.canExecute()) {
+                return false;
+            }
+            String name = pathname.getName().toLowerCase();
+            if (isWindows && !name.endsWith(EXE_FILE_EXT)) {
+                return false;
+            }
+            for (String x : exclude) {
+                if (name.endsWith(x)) {
+                    return false;
+                }
+            }
+            return true;
+        }
+    }
 }