7074397: Build infrastructure changes (makefile re-write)
Summary: New makefiles transition, old and new living side by side for now.
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
Contributed-by: ohrstrom <fredrik.ohrstrom@oracle.com>, erikj <erik.joelsson@oracle.com>, ihse <magnus.ihse.bursie@oracle.com>, tgranat <torbjorn.granat@oracle.com>, ykantser <yekaterina.kantserova@oracle.com>
diff --git a/makefiles/CompileDemos.gmk b/makefiles/CompileDemos.gmk
new file mode 100644
index 0000000..814465f
--- /dev/null
+++ b/makefiles/CompileDemos.gmk
@@ -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
diff --git a/makefiles/CompileJavaClasses.gmk b/makefiles/CompileJavaClasses.gmk
new file mode 100644
index 0000000..3a0b70a
--- /dev/null
+++ b/makefiles/CompileJavaClasses.gmk
@@ -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
diff --git a/makefiles/CompileLaunchers.gmk b/makefiles/CompileLaunchers.gmk
new file mode 100644
index 0000000..9055747
--- /dev/null
+++ b/makefiles/CompileLaunchers.gmk
@@ -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
diff --git a/makefiles/CompileNativeLibraries.gmk b/makefiles/CompileNativeLibraries.gmk
new file mode 100644
index 0000000..fb97317
--- /dev/null
+++ b/makefiles/CompileNativeLibraries.gmk
@@ -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
diff --git a/makefiles/CopyFiles.gmk b/makefiles/CopyFiles.gmk
new file mode 100644
index 0000000..63679cf
--- /dev/null
+++ b/makefiles/CopyFiles.gmk
@@ -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
+
+##########################################################################################
diff --git a/makefiles/CopyIntoClasses.gmk b/makefiles/CopyIntoClasses.gmk
new file mode 100644
index 0000000..9fef4c5
--- /dev/null
+++ b/makefiles/CopyIntoClasses.gmk
@@ -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)
diff --git a/makefiles/CopySamples.gmk b/makefiles/CopySamples.gmk
new file mode 100644
index 0000000..bbc6f3c
--- /dev/null
+++ b/makefiles/CopySamples.gmk
@@ -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
+
diff --git a/makefiles/GendataBreakIterator.gmk b/makefiles/GendataBreakIterator.gmk
new file mode 100644
index 0000000..6406828
--- /dev/null
+++ b/makefiles/GendataBreakIterator.gmk
@@ -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)
diff --git a/makefiles/GenerateClasses.gmk b/makefiles/GenerateClasses.gmk
new file mode 100644
index 0000000..8727e51
--- /dev/null
+++ b/makefiles/GenerateClasses.gmk
@@ -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
diff --git a/makefiles/GenerateData.gmk b/makefiles/GenerateData.gmk
new file mode 100644
index 0000000..389bf96
--- /dev/null
+++ b/makefiles/GenerateData.gmk
@@ -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
diff --git a/makefiles/GenerateJavaSources.gmk b/makefiles/GenerateJavaSources.gmk
new file mode 100644
index 0000000..35c077a
--- /dev/null
+++ b/makefiles/GenerateJavaSources.gmk
@@ -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
diff --git a/makefiles/GensrcCharacterData.gmk b/makefiles/GensrcCharacterData.gmk
new file mode 100644
index 0000000..5321305
--- /dev/null
+++ b/makefiles/GensrcCharacterData.gmk
@@ -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)
diff --git a/makefiles/GensrcJDWP.gmk b/makefiles/GensrcJDWP.gmk
new file mode 100644
index 0000000..7a0a067
--- /dev/null
+++ b/makefiles/GensrcJDWP.gmk
@@ -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
diff --git a/makefiles/GensrcLocaleDataMetaInfo.gmk b/makefiles/GensrcLocaleDataMetaInfo.gmk
new file mode 100644
index 0000000..1e3c192
--- /dev/null
+++ b/makefiles/GensrcLocaleDataMetaInfo.gmk
@@ -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
diff --git a/makefiles/GensrcMisc.gmk b/makefiles/GensrcMisc.gmk
new file mode 100644
index 0000000..e7d1ba6
--- /dev/null
+++ b/makefiles/GensrcMisc.gmk
@@ -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
+
+##########################################################################################
diff --git a/makefiles/GensrcProperties.gmk b/makefiles/GensrcProperties.gmk
new file mode 100644
index 0000000..3226f33
--- /dev/null
+++ b/makefiles/GensrcProperties.gmk
@@ -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)
diff --git a/makefiles/Images.gmk b/makefiles/Images.gmk
new file mode 100644
index 0000000..4d5c3be
--- /dev/null
+++ b/makefiles/Images.gmk
@@ -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
diff --git a/makefiles/LegacyMakefiles.gmk b/makefiles/LegacyMakefiles.gmk
new file mode 100644
index 0000000..96e4bad
--- /dev/null
+++ b/makefiles/LegacyMakefiles.gmk
@@ -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
+
diff --git a/makefiles/Makefile b/makefiles/Makefile
new file mode 100644
index 0000000..67b8d27
--- /dev/null
+++ b/makefiles/Makefile
@@ -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
diff --git a/makefiles/PatchList.solaris b/makefiles/PatchList.solaris
new file mode 100644
index 0000000..173881e
--- /dev/null
+++ b/makefiles/PatchList.solaris
@@ -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"
+
diff --git a/makefiles/Setup.gmk b/makefiles/Setup.gmk
new file mode 100644
index 0000000..ac9cee9
--- /dev/null
+++ b/makefiles/Setup.gmk
@@ -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))
diff --git a/makefiles/Tools.gmk b/makefiles/Tools.gmk
new file mode 100644
index 0000000..2663ffb
--- /dev/null
+++ b/makefiles/Tools.gmk
@@ -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
diff --git a/makefiles/altclasses/Makefile b/makefiles/altclasses/Makefile
new file mode 100644
index 0000000..2017520
--- /dev/null
+++ b/makefiles/altclasses/Makefile
@@ -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
+
diff --git a/makefiles/apple/Makefile b/makefiles/apple/Makefile
new file mode 100644
index 0000000..4dd03dd
--- /dev/null
+++ b/makefiles/apple/Makefile
@@ -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)
diff --git a/makefiles/apple/applescript/Makefile b/makefiles/apple/applescript/Makefile
new file mode 100644
index 0000000..6d0bc79
--- /dev/null
+++ b/makefiles/apple/applescript/Makefile
@@ -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
diff --git a/makefiles/com/Makefile b/makefiles/com/Makefile
new file mode 100644
index 0000000..6f45213
--- /dev/null
+++ b/makefiles/com/Makefile
@@ -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)
+
diff --git a/makefiles/com/apple/Makefile b/makefiles/com/apple/Makefile
new file mode 100644
index 0000000..c336c61
--- /dev/null
+++ b/makefiles/com/apple/Makefile
@@ -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)
diff --git a/makefiles/com/apple/osx/Makefile b/makefiles/com/apple/osx/Makefile
new file mode 100644
index 0000000..bf0ef9c
--- /dev/null
+++ b/makefiles/com/apple/osx/Makefile
@@ -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
diff --git a/makefiles/com/apple/osxui/Makefile b/makefiles/com/apple/osxui/Makefile
new file mode 100644
index 0000000..63d78d2
--- /dev/null
+++ b/makefiles/com/apple/osxui/Makefile
@@ -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
diff --git a/makefiles/com/oracle/Makefile b/makefiles/com/oracle/Makefile
new file mode 100644
index 0000000..bf7d666
--- /dev/null
+++ b/makefiles/com/oracle/Makefile
@@ -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)
+
diff --git a/makefiles/com/oracle/jfr/Makefile b/makefiles/com/oracle/jfr/Makefile
new file mode 100644
index 0000000..5fd5e53
--- /dev/null
+++ b/makefiles/com/oracle/jfr/Makefile
@@ -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)
+
diff --git a/makefiles/com/oracle/security/ucrypto/FILES_c.gmk b/makefiles/com/oracle/security/ucrypto/FILES_c.gmk
new file mode 100644
index 0000000..0c69755
--- /dev/null
+++ b/makefiles/com/oracle/security/ucrypto/FILES_c.gmk
@@ -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
diff --git a/makefiles/com/oracle/security/ucrypto/Makefile b/makefiles/com/oracle/security/ucrypto/Makefile
new file mode 100644
index 0000000..8ea7a74
--- /dev/null
+++ b/makefiles/com/oracle/security/ucrypto/Makefile
@@ -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
diff --git a/makefiles/com/oracle/security/ucrypto/mapfile-vers b/makefiles/com/oracle/security/ucrypto/mapfile-vers
new file mode 100644
index 0000000..1891d77
--- /dev/null
+++ b/makefiles/com/oracle/security/ucrypto/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/com/sun/Makefile b/makefiles/com/sun/Makefile
new file mode 100644
index 0000000..9049d00
--- /dev/null
+++ b/makefiles/com/sun/Makefile
@@ -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)
diff --git a/makefiles/com/sun/crypto/provider/Makefile b/makefiles/com/sun/crypto/provider/Makefile
new file mode 100644
index 0000000..93a0b13
--- /dev/null
+++ b/makefiles/com/sun/crypto/provider/Makefile
@@ -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
diff --git a/makefiles/common/Classes.gmk b/makefiles/common/Classes.gmk
new file mode 100644
index 0000000..07acf6c
--- /dev/null
+++ b/makefiles/common/Classes.gmk
@@ -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
+
diff --git a/makefiles/common/Cscope.gmk b/makefiles/common/Cscope.gmk
new file mode 100644
index 0000000..812fd5f
--- /dev/null
+++ b/makefiles/common/Cscope.gmk
@@ -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:
diff --git a/makefiles/common/Defs-embedded.gmk b/makefiles/common/Defs-embedded.gmk
new file mode 100644
index 0000000..089fae9
--- /dev/null
+++ b/makefiles/common/Defs-embedded.gmk
@@ -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
+
diff --git a/makefiles/common/Defs-linux.gmk b/makefiles/common/Defs-linux.gmk
new file mode 100644
index 0000000..03ff72a
--- /dev/null
+++ b/makefiles/common/Defs-linux.gmk
@@ -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
diff --git a/makefiles/common/Defs-macosx.gmk b/makefiles/common/Defs-macosx.gmk
new file mode 100644
index 0000000..1d3753e
--- /dev/null
+++ b/makefiles/common/Defs-macosx.gmk
@@ -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)
diff --git a/makefiles/common/Defs-solaris.gmk b/makefiles/common/Defs-solaris.gmk
new file mode 100644
index 0000000..7632e67
--- /dev/null
+++ b/makefiles/common/Defs-solaris.gmk
@@ -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
+
diff --git a/makefiles/common/Defs-windows.gmk b/makefiles/common/Defs-windows.gmk
new file mode 100644
index 0000000..54c9879
--- /dev/null
+++ b/makefiles/common/Defs-windows.gmk
@@ -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
diff --git a/makefiles/common/Defs.gmk b/makefiles/common/Defs.gmk
new file mode 100644
index 0000000..be43455
--- /dev/null
+++ b/makefiles/common/Defs.gmk
@@ -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
diff --git a/makefiles/common/Demo.gmk b/makefiles/common/Demo.gmk
new file mode 100644
index 0000000..25e1bd0
--- /dev/null
+++ b/makefiles/common/Demo.gmk
@@ -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
+
diff --git a/makefiles/common/Library.gmk b/makefiles/common/Library.gmk
new file mode 100644
index 0000000..03b76ae
--- /dev/null
+++ b/makefiles/common/Library.gmk
@@ -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
+
diff --git a/makefiles/common/Mapfile-vers.gmk b/makefiles/common/Mapfile-vers.gmk
new file mode 100644
index 0000000..15c8ccd
--- /dev/null
+++ b/makefiles/common/Mapfile-vers.gmk
@@ -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)
+
diff --git a/makefiles/common/Modules.gmk b/makefiles/common/Modules.gmk
new file mode 100644
index 0000000..7c6ccfd
--- /dev/null
+++ b/makefiles/common/Modules.gmk
@@ -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:
+
diff --git a/makefiles/common/Program.gmk b/makefiles/common/Program.gmk
new file mode 100644
index 0000000..5ace9dc
--- /dev/null
+++ b/makefiles/common/Program.gmk
@@ -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
diff --git a/makefiles/common/Release-embedded.gmk b/makefiles/common/Release-embedded.gmk
new file mode 100644
index 0000000..d5d709f
--- /dev/null
+++ b/makefiles/common/Release-embedded.gmk
@@ -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
+
diff --git a/makefiles/common/Release-macosx.gmk b/makefiles/common/Release-macosx.gmk
new file mode 100644
index 0000000..9235afa
--- /dev/null
+++ b/makefiles/common/Release-macosx.gmk
@@ -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)
diff --git a/makefiles/common/Release.gmk b/makefiles/common/Release.gmk
new file mode 100644
index 0000000..381a1dd
--- /dev/null
+++ b/makefiles/common/Release.gmk
@@ -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:
+
diff --git a/makefiles/common/Rules.gmk b/makefiles/common/Rules.gmk
new file mode 100644
index 0000000..9e9163a
--- /dev/null
+++ b/makefiles/common/Rules.gmk
@@ -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
+
diff --git a/makefiles/common/Subdirs.gmk b/makefiles/common/Subdirs.gmk
new file mode 100644
index 0000000..b8c5405
--- /dev/null
+++ b/makefiles/common/Subdirs.gmk
@@ -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
diff --git a/makefiles/common/internal/Defs-corba.gmk b/makefiles/common/internal/Defs-corba.gmk
new file mode 100644
index 0000000..2046869
--- /dev/null
+++ b/makefiles/common/internal/Defs-corba.gmk
@@ -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
+
diff --git a/makefiles/common/internal/Defs-jaxp.gmk b/makefiles/common/internal/Defs-jaxp.gmk
new file mode 100644
index 0000000..eb5813c
--- /dev/null
+++ b/makefiles/common/internal/Defs-jaxp.gmk
@@ -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 +=
+
diff --git a/makefiles/common/internal/Defs-jaxws.gmk b/makefiles/common/internal/Defs-jaxws.gmk
new file mode 100644
index 0000000..f0ba12b
--- /dev/null
+++ b/makefiles/common/internal/Defs-jaxws.gmk
@@ -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
+
+
diff --git a/makefiles/common/internal/Defs-langtools.gmk b/makefiles/common/internal/Defs-langtools.gmk
new file mode 100644
index 0000000..eebbfd0
--- /dev/null
+++ b/makefiles/common/internal/Defs-langtools.gmk
@@ -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
+
diff --git a/makefiles/common/internal/ImportComponents.gmk b/makefiles/common/internal/ImportComponents.gmk
new file mode 100644
index 0000000..995de5b
--- /dev/null
+++ b/makefiles/common/internal/ImportComponents.gmk
@@ -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
+
diff --git a/makefiles/common/internal/NativeCompileRules.gmk b/makefiles/common/internal/NativeCompileRules.gmk
new file mode 100644
index 0000000..68d5eca
--- /dev/null
+++ b/makefiles/common/internal/NativeCompileRules.gmk
@@ -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
+
+
diff --git a/makefiles/common/internal/Resources.gmk b/makefiles/common/internal/Resources.gmk
new file mode 100644
index 0000000..2b5c1e7
--- /dev/null
+++ b/makefiles/common/internal/Resources.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Compiler-gcc.gmk b/makefiles/common/shared/Compiler-gcc.gmk
new file mode 100644
index 0000000..3b6923e
--- /dev/null
+++ b/makefiles/common/shared/Compiler-gcc.gmk
@@ -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)
+
diff --git a/makefiles/common/shared/Compiler-llvm.gmk b/makefiles/common/shared/Compiler-llvm.gmk
new file mode 100644
index 0000000..0b26a08
--- /dev/null
+++ b/makefiles/common/shared/Compiler-llvm.gmk
@@ -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)
+
diff --git a/makefiles/common/shared/Compiler-msvc.gmk b/makefiles/common/shared/Compiler-msvc.gmk
new file mode 100644
index 0000000..b500702
--- /dev/null
+++ b/makefiles/common/shared/Compiler-msvc.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Compiler-sun.gmk b/makefiles/common/shared/Compiler-sun.gmk
new file mode 100644
index 0000000..539ba98
--- /dev/null
+++ b/makefiles/common/shared/Compiler-sun.gmk
@@ -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))
+
diff --git a/makefiles/common/shared/Defs-control.gmk b/makefiles/common/shared/Defs-control.gmk
new file mode 100644
index 0000000..3a5dc16
--- /dev/null
+++ b/makefiles/common/shared/Defs-control.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-java.gmk b/makefiles/common/shared/Defs-java.gmk
new file mode 100644
index 0000000..4422ca3
--- /dev/null
+++ b/makefiles/common/shared/Defs-java.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-javadoc.gmk b/makefiles/common/shared/Defs-javadoc.gmk
new file mode 100644
index 0000000..c222ad1
--- /dev/null
+++ b/makefiles/common/shared/Defs-javadoc.gmk
@@ -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 = ™
+
+# 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
+
diff --git a/makefiles/common/shared/Defs-linux.gmk b/makefiles/common/shared/Defs-linux.gmk
new file mode 100644
index 0000000..1e0559d
--- /dev/null
+++ b/makefiles/common/shared/Defs-linux.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-macosx.gmk b/makefiles/common/shared/Defs-macosx.gmk
new file mode 100644
index 0000000..a847d8a
--- /dev/null
+++ b/makefiles/common/shared/Defs-macosx.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-solaris.gmk b/makefiles/common/shared/Defs-solaris.gmk
new file mode 100644
index 0000000..cd7fa15
--- /dev/null
+++ b/makefiles/common/shared/Defs-solaris.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-versions.gmk b/makefiles/common/shared/Defs-versions.gmk
new file mode 100644
index 0000000..fba7037
--- /dev/null
+++ b/makefiles/common/shared/Defs-versions.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs-windows.gmk b/makefiles/common/shared/Defs-windows.gmk
new file mode 100644
index 0000000..da796ee
--- /dev/null
+++ b/makefiles/common/shared/Defs-windows.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Defs.gmk b/makefiles/common/shared/Defs.gmk
new file mode 100644
index 0000000..9a8236c
--- /dev/null
+++ b/makefiles/common/shared/Defs.gmk
@@ -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
+
diff --git a/makefiles/common/shared/Platform.gmk b/makefiles/common/shared/Platform.gmk
new file mode 100644
index 0000000..56ee019
--- /dev/null
+++ b/makefiles/common/shared/Platform.gmk
@@ -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
+
diff --git a/makefiles/common/shared/PrivateDefs.gmk-example b/makefiles/common/shared/PrivateDefs.gmk-example
new file mode 100644
index 0000000..93f6a43
--- /dev/null
+++ b/makefiles/common/shared/PrivateDefs.gmk-example
@@ -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
+
diff --git a/makefiles/common/shared/Sanity-Settings.gmk b/makefiles/common/shared/Sanity-Settings.gmk
new file mode 100644
index 0000000..e571b06
--- /dev/null
+++ b/makefiles/common/shared/Sanity-Settings.gmk
@@ -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
diff --git a/makefiles/docs/CORE_PKGS.gmk b/makefiles/docs/CORE_PKGS.gmk
new file mode 100644
index 0000000..84c8986
--- /dev/null
+++ b/makefiles/docs/CORE_PKGS.gmk
@@ -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
diff --git a/makefiles/docs/Makefile b/makefiles/docs/Makefile
new file mode 100644
index 0000000..5a395da
--- /dev/null
+++ b/makefiles/docs/Makefile
@@ -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 $(MILESTONE)-$(BUILD_NUMBER)</strong>
+ DRAFT_BOTTOM = <br><strong>DRAFT $(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) Platform<br>Standard Ed. $(JDK_MINOR_VERSION)</strong>
+
+# Java language specification cite
+TAG_JLS = jls:a:See <cite> \
+The Java™ 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)
+
diff --git a/makefiles/docs/NON_CORE_PKGS.gmk b/makefiles/docs/NON_CORE_PKGS.gmk
new file mode 100644
index 0000000..b68208b
--- /dev/null
+++ b/makefiles/docs/NON_CORE_PKGS.gmk
@@ -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)
+
diff --git a/makefiles/docs/Notes.html b/makefiles/docs/Notes.html
new file mode 100644
index 0000000..e3d8ae1
--- /dev/null
+++ b/makefiles/docs/Notes.html
@@ -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 "core packages"
+ (java.*) and "extension packages" (javax.*). In time, the distinction
+ went away. The whole table is now called "Platform Packages"--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 "*",
+ 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 "*" at this point
+ in time:</p>
+<blockquote>
+ <pre>REGEXP = "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 "internal"--which silently
+ sabotage the result of a build that can take many hours to complete.</p>
+</body>
+</html>
diff --git a/makefiles/java/Makefile b/makefiles/java/Makefile
new file mode 100644
index 0000000..6d9f5da
--- /dev/null
+++ b/makefiles/java/Makefile
@@ -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)
+
diff --git a/makefiles/java/fdlibm/FILES_c.gmk b/makefiles/java/fdlibm/FILES_c.gmk
new file mode 100644
index 0000000..cc7a1ad
--- /dev/null
+++ b/makefiles/java/fdlibm/FILES_c.gmk
@@ -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
diff --git a/makefiles/java/fdlibm/Makefile b/makefiles/java/fdlibm/Makefile
new file mode 100644
index 0000000..36a9611
--- /dev/null
+++ b/makefiles/java/fdlibm/Makefile
@@ -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
diff --git a/makefiles/java/instrument/Makefile b/makefiles/java/instrument/Makefile
new file mode 100644
index 0000000..76a0553
--- /dev/null
+++ b/makefiles/java/instrument/Makefile
@@ -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)
+
diff --git a/makefiles/java/instrument/mapfile-vers b/makefiles/java/instrument/mapfile-vers
new file mode 100644
index 0000000..d219453
--- /dev/null
+++ b/makefiles/java/instrument/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/invoke/Makefile b/makefiles/java/invoke/Makefile
new file mode 100644
index 0000000..93b1f46
--- /dev/null
+++ b/makefiles/java/invoke/Makefile
@@ -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
diff --git a/makefiles/java/java/Exportedfiles.gmk b/makefiles/java/java/Exportedfiles.gmk
new file mode 100644
index 0000000..3eac7db
--- /dev/null
+++ b/makefiles/java/java/Exportedfiles.gmk
@@ -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
diff --git a/makefiles/java/java/FILES_c.gmk b/makefiles/java/java/FILES_c.gmk
new file mode 100644
index 0000000..a8256b7
--- /dev/null
+++ b/makefiles/java/java/FILES_c.gmk
@@ -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
diff --git a/makefiles/java/java/FILES_java.gmk b/makefiles/java/java/FILES_java.gmk
new file mode 100644
index 0000000..7a6d93a
--- /dev/null
+++ b/makefiles/java/java/FILES_java.gmk
@@ -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)
diff --git a/makefiles/java/java/Makefile b/makefiles/java/java/Makefile
new file mode 100644
index 0000000..451fbea
--- /dev/null
+++ b/makefiles/java/java/Makefile
@@ -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
+
diff --git a/makefiles/java/java/localelist.sh b/makefiles/java/java/localelist.sh
new file mode 100644
index 0000000..c1b6b7f
--- /dev/null
+++ b/makefiles/java/java/localelist.sh
@@ -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
+
+
+
diff --git a/makefiles/java/java/mapfile-vers b/makefiles/java/java/mapfile-vers
new file mode 100644
index 0000000..8517e71
--- /dev/null
+++ b/makefiles/java/java/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/java/reflect/Makefile b/makefiles/java/java/reflect/Makefile
new file mode 100644
index 0000000..40bd886
--- /dev/null
+++ b/makefiles/java/java/reflect/Makefile
@@ -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
diff --git a/makefiles/java/java/reorder-i586 b/makefiles/java/java/reorder-i586
new file mode 100644
index 0000000..fc3202a
--- /dev/null
+++ b/makefiles/java/java/reorder-i586
@@ -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;
diff --git a/makefiles/java/java/reorder-sparc b/makefiles/java/java/reorder-sparc
new file mode 100644
index 0000000..090f000
--- /dev/null
+++ b/makefiles/java/java/reorder-sparc
@@ -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;
diff --git a/makefiles/java/java/reorder-sparcv9 b/makefiles/java/java/reorder-sparcv9
new file mode 100644
index 0000000..b20b45a
--- /dev/null
+++ b/makefiles/java/java/reorder-sparcv9
@@ -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;
diff --git a/makefiles/java/java_crw_demo/Makefile b/makefiles/java/java_crw_demo/Makefile
new file mode 100644
index 0000000..ebcadd7
--- /dev/null
+++ b/makefiles/java/java_crw_demo/Makefile
@@ -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)
+
diff --git a/makefiles/java/java_crw_demo/mapfile-vers b/makefiles/java/java_crw_demo/mapfile-vers
new file mode 100644
index 0000000..a21993e
--- /dev/null
+++ b/makefiles/java/java_crw_demo/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/java_hprof_demo/Makefile b/makefiles/java/java_hprof_demo/Makefile
new file mode 100644
index 0000000..9880547
--- /dev/null
+++ b/makefiles/java/java_hprof_demo/Makefile
@@ -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
+
diff --git a/makefiles/java/java_hprof_demo/mapfile-vers b/makefiles/java/java_hprof_demo/mapfile-vers
new file mode 100644
index 0000000..c9c948b
--- /dev/null
+++ b/makefiles/java/java_hprof_demo/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/jexec/Makefile b/makefiles/java/jexec/Makefile
new file mode 100644
index 0000000..aa37904
--- /dev/null
+++ b/makefiles/java/jexec/Makefile
@@ -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)
+
diff --git a/makefiles/java/jli/Makefile b/makefiles/java/jli/Makefile
new file mode 100644
index 0000000..8aec159
--- /dev/null
+++ b/makefiles/java/jli/Makefile
@@ -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
diff --git a/makefiles/java/jli/mapfile-vers b/makefiles/java/jli/mapfile-vers
new file mode 100644
index 0000000..786e528
--- /dev/null
+++ b/makefiles/java/jli/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/jobjc/Makefile b/makefiles/java/jobjc/Makefile
new file mode 100644
index 0000000..6996cbf
--- /dev/null
+++ b/makefiles/java/jobjc/Makefile
@@ -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
diff --git a/makefiles/java/jvm/Makefile b/makefiles/java/jvm/Makefile
new file mode 100644
index 0000000..26f95ff
--- /dev/null
+++ b/makefiles/java/jvm/Makefile
@@ -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)
+
diff --git a/makefiles/java/main/Makefile b/makefiles/java/main/Makefile
new file mode 100644
index 0000000..9eb14ab
--- /dev/null
+++ b/makefiles/java/main/Makefile
@@ -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)
+
diff --git a/makefiles/java/main/java/Makefile b/makefiles/java/main/java/Makefile
new file mode 100644
index 0000000..1766880
--- /dev/null
+++ b/makefiles/java/main/java/Makefile
@@ -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
diff --git a/makefiles/java/main/java/mapfile-amd64 b/makefiles/java/main/java/mapfile-amd64
new file mode 100644
index 0000000..760fcc1
--- /dev/null
+++ b/makefiles/java/main/java/mapfile-amd64
@@ -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:
+ *;
+};
diff --git a/makefiles/java/main/java/mapfile-i586 b/makefiles/java/main/java/mapfile-i586
new file mode 100644
index 0000000..48061dd
--- /dev/null
+++ b/makefiles/java/main/java/mapfile-i586
@@ -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:
+ *;
+};
diff --git a/makefiles/java/main/java/mapfile-sparc b/makefiles/java/main/java/mapfile-sparc
new file mode 100644
index 0000000..ef7eaf9
--- /dev/null
+++ b/makefiles/java/main/java/mapfile-sparc
@@ -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:
+ *;
+};
diff --git a/makefiles/java/main/java/mapfile-sparcv9 b/makefiles/java/main/java/mapfile-sparcv9
new file mode 100644
index 0000000..5ecdf6f
--- /dev/null
+++ b/makefiles/java/main/java/mapfile-sparcv9
@@ -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:
+ *;
+};
diff --git a/makefiles/java/main/javaw/Makefile b/makefiles/java/main/javaw/Makefile
new file mode 100644
index 0000000..93a536e
--- /dev/null
+++ b/makefiles/java/main/javaw/Makefile
@@ -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)"'
+
diff --git a/makefiles/java/management/Exportedfiles.gmk b/makefiles/java/management/Exportedfiles.gmk
new file mode 100644
index 0000000..0654fb5
--- /dev/null
+++ b/makefiles/java/management/Exportedfiles.gmk
@@ -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
diff --git a/makefiles/java/management/FILES_c.gmk b/makefiles/java/management/FILES_c.gmk
new file mode 100644
index 0000000..8c5ddce
--- /dev/null
+++ b/makefiles/java/management/FILES_c.gmk
@@ -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
+
diff --git a/makefiles/java/management/Makefile b/makefiles/java/management/Makefile
new file mode 100644
index 0000000..bffb5ed
--- /dev/null
+++ b/makefiles/java/management/Makefile
@@ -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)
+
diff --git a/makefiles/java/management/mapfile-vers b/makefiles/java/management/mapfile-vers
new file mode 100644
index 0000000..21b92d4
--- /dev/null
+++ b/makefiles/java/management/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/net/FILES_c.gmk b/makefiles/java/net/FILES_c.gmk
new file mode 100644
index 0000000..a4bbb40
--- /dev/null
+++ b/makefiles/java/net/FILES_c.gmk
@@ -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
+
diff --git a/makefiles/java/net/Makefile b/makefiles/java/net/Makefile
new file mode 100644
index 0000000..ba15900
--- /dev/null
+++ b/makefiles/java/net/Makefile
@@ -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)
+
diff --git a/makefiles/java/net/mapfile-vers b/makefiles/java/net/mapfile-vers
new file mode 100644
index 0000000..5018471
--- /dev/null
+++ b/makefiles/java/net/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/nio/Exportedfiles.gmk b/makefiles/java/nio/Exportedfiles.gmk
new file mode 100644
index 0000000..75ee6be
--- /dev/null
+++ b/makefiles/java/nio/Exportedfiles.gmk
@@ -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 \
diff --git a/makefiles/java/nio/FILES_c.gmk b/makefiles/java/nio/FILES_c.gmk
new file mode 100644
index 0000000..1373bac
--- /dev/null
+++ b/makefiles/java/nio/FILES_c.gmk
@@ -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
diff --git a/makefiles/java/nio/FILES_java.gmk b/makefiles/java/nio/FILES_java.gmk
new file mode 100644
index 0000000..b394b89
--- /dev/null
+++ b/makefiles/java/nio/FILES_java.gmk
@@ -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)
diff --git a/makefiles/java/nio/Makefile b/makefiles/java/nio/Makefile
new file mode 100644
index 0000000..dee240f
--- /dev/null
+++ b/makefiles/java/nio/Makefile
@@ -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
diff --git a/makefiles/java/nio/addNotices.sh b/makefiles/java/nio/addNotices.sh
new file mode 100644
index 0000000..4bb1ace
--- /dev/null
+++ b/makefiles/java/nio/addNotices.sh
@@ -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
diff --git a/makefiles/java/nio/genBuffer.sh b/makefiles/java/nio/genBuffer.sh
new file mode 100644
index 0000000..91e6f7e
--- /dev/null
+++ b/makefiles/java/nio/genBuffer.sh
@@ -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
diff --git a/makefiles/java/nio/genCharsetProvider.sh b/makefiles/java/nio/genCharsetProvider.sh
new file mode 100644
index 0000000..1b0fe1a
--- /dev/null
+++ b/makefiles/java/nio/genCharsetProvider.sh
@@ -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__
diff --git a/makefiles/java/nio/genCoder.sh b/makefiles/java/nio/genCoder.sh
new file mode 100644
index 0000000..4a2668d
--- /dev/null
+++ b/makefiles/java/nio/genCoder.sh
@@ -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>"\\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>\ <tt>(byte)'"'"\\?"'"'<\/tt>\ <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
diff --git a/makefiles/java/nio/genExceptions.sh b/makefiles/java/nio/genExceptions.sh
new file mode 100644
index 0000000..9839282
--- /dev/null
+++ b/makefiles/java/nio/genExceptions.sh
@@ -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
diff --git a/makefiles/java/nio/mapfile-bsd b/makefiles/java/nio/mapfile-bsd
new file mode 100644
index 0000000..b3f50ff
--- /dev/null
+++ b/makefiles/java/nio/mapfile-bsd
@@ -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:
+ *;
+};
diff --git a/makefiles/java/nio/mapfile-linux b/makefiles/java/nio/mapfile-linux
new file mode 100644
index 0000000..d722441
--- /dev/null
+++ b/makefiles/java/nio/mapfile-linux
@@ -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:
+ *;
+};
diff --git a/makefiles/java/nio/mapfile-solaris b/makefiles/java/nio/mapfile-solaris
new file mode 100644
index 0000000..4d86f28
--- /dev/null
+++ b/makefiles/java/nio/mapfile-solaris
@@ -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:
+ *;
+};
diff --git a/makefiles/java/nio/reorder-i586 b/makefiles/java/nio/reorder-i586
new file mode 100644
index 0000000..b1ef113
--- /dev/null
+++ b/makefiles/java/nio/reorder-i586
@@ -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
diff --git a/makefiles/java/nio/reorder-sparc b/makefiles/java/nio/reorder-sparc
new file mode 100644
index 0000000..621b6c4
--- /dev/null
+++ b/makefiles/java/nio/reorder-sparc
@@ -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
diff --git a/makefiles/java/nio/reorder-sparcv9 b/makefiles/java/nio/reorder-sparcv9
new file mode 100644
index 0000000..b1ef113
--- /dev/null
+++ b/makefiles/java/nio/reorder-sparcv9
@@ -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
diff --git a/makefiles/java/npt/Makefile b/makefiles/java/npt/Makefile
new file mode 100644
index 0000000..e5efd9d
--- /dev/null
+++ b/makefiles/java/npt/Makefile
@@ -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)
+
diff --git a/makefiles/java/npt/mapfile-vers b/makefiles/java/npt/mapfile-vers
new file mode 100644
index 0000000..d8386a8
--- /dev/null
+++ b/makefiles/java/npt/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/redist/Makefile b/makefiles/java/redist/Makefile
new file mode 100644
index 0000000..5c623b2
--- /dev/null
+++ b/makefiles/java/redist/Makefile
@@ -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
+
diff --git a/makefiles/java/redist/fonts/Makefile b/makefiles/java/redist/fonts/Makefile
new file mode 100644
index 0000000..d98fb8f
--- /dev/null
+++ b/makefiles/java/redist/fonts/Makefile
@@ -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
diff --git a/makefiles/java/redist/sajdi/Makefile b/makefiles/java/redist/sajdi/Makefile
new file mode 100644
index 0000000..1e1e818
--- /dev/null
+++ b/makefiles/java/redist/sajdi/Makefile
@@ -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::
diff --git a/makefiles/java/security/Makefile b/makefiles/java/security/Makefile
new file mode 100644
index 0000000..19f4314
--- /dev/null
+++ b/makefiles/java/security/Makefile
@@ -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
+
diff --git a/makefiles/java/sun_nio/FILES_java.gmk b/makefiles/java/sun_nio/FILES_java.gmk
new file mode 100644
index 0000000..b00fb04
--- /dev/null
+++ b/makefiles/java/sun_nio/FILES_java.gmk
@@ -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
+
diff --git a/makefiles/java/sun_nio/Makefile b/makefiles/java/sun_nio/Makefile
new file mode 100644
index 0000000..122c58a
--- /dev/null
+++ b/makefiles/java/sun_nio/Makefile
@@ -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
diff --git a/makefiles/java/util/FILES_java.gmk b/makefiles/java/util/FILES_java.gmk
new file mode 100644
index 0000000..8746e02
--- /dev/null
+++ b/makefiles/java/util/FILES_java.gmk
@@ -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
diff --git a/makefiles/java/util/FILES_properties.gmk b/makefiles/java/util/FILES_properties.gmk
new file mode 100644
index 0000000..5aa6cbf
--- /dev/null
+++ b/makefiles/java/util/FILES_properties.gmk
@@ -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
diff --git a/makefiles/java/util/Makefile b/makefiles/java/util/Makefile
new file mode 100644
index 0000000..fa6eeb6
--- /dev/null
+++ b/makefiles/java/util/Makefile
@@ -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
+
diff --git a/makefiles/java/verify/Makefile b/makefiles/java/verify/Makefile
new file mode 100644
index 0000000..4343e4a
--- /dev/null
+++ b/makefiles/java/verify/Makefile
@@ -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
+
diff --git a/makefiles/java/verify/mapfile-vers b/makefiles/java/verify/mapfile-vers
new file mode 100644
index 0000000..ecabd58
--- /dev/null
+++ b/makefiles/java/verify/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/java/verify/reorder-i586 b/makefiles/java/verify/reorder-i586
new file mode 100644
index 0000000..56ee8e3
--- /dev/null
+++ b/makefiles/java/verify/reorder-i586
@@ -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;
diff --git a/makefiles/java/verify/reorder-sparc b/makefiles/java/verify/reorder-sparc
new file mode 100644
index 0000000..17e1346
--- /dev/null
+++ b/makefiles/java/verify/reorder-sparc
@@ -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;
diff --git a/makefiles/java/verify/reorder-sparcv9 b/makefiles/java/verify/reorder-sparcv9
new file mode 100644
index 0000000..1f58d56
--- /dev/null
+++ b/makefiles/java/verify/reorder-sparcv9
@@ -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;
diff --git a/makefiles/javax/Makefile b/makefiles/javax/Makefile
new file mode 100644
index 0000000..d0c06f9
--- /dev/null
+++ b/makefiles/javax/Makefile
@@ -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)
+
diff --git a/makefiles/javax/crypto/Defs-jce.gmk b/makefiles/javax/crypto/Defs-jce.gmk
new file mode 100644
index 0000000..0bfd00c
--- /dev/null
+++ b/makefiles/javax/crypto/Defs-jce.gmk
@@ -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
diff --git a/makefiles/javax/crypto/Makefile b/makefiles/javax/crypto/Makefile
new file mode 100644
index 0000000..f9089f9
--- /dev/null
+++ b/makefiles/javax/crypto/Makefile
@@ -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
diff --git a/makefiles/javax/crypto/policy/limited/LIMITED b/makefiles/javax/crypto/policy/limited/LIMITED
new file mode 100644
index 0000000..b58f7ac
--- /dev/null
+++ b/makefiles/javax/crypto/policy/limited/LIMITED
@@ -0,0 +1 @@
+Crypto-Strength: limited
diff --git a/makefiles/javax/crypto/policy/limited/default_local.policy b/makefiles/javax/crypto/policy/limited/default_local.policy
new file mode 100644
index 0000000..2a6d513
--- /dev/null
+++ b/makefiles/javax/crypto/policy/limited/default_local.policy
@@ -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;
+};
diff --git a/makefiles/javax/crypto/policy/limited/exempt_local.policy b/makefiles/javax/crypto/policy/limited/exempt_local.policy
new file mode 100644
index 0000000..f3255a2
--- /dev/null
+++ b/makefiles/javax/crypto/policy/limited/exempt_local.policy
@@ -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";
+};
diff --git a/makefiles/javax/crypto/policy/unlimited/UNLIMITED b/makefiles/javax/crypto/policy/unlimited/UNLIMITED
new file mode 100644
index 0000000..7fc7743
--- /dev/null
+++ b/makefiles/javax/crypto/policy/unlimited/UNLIMITED
@@ -0,0 +1 @@
+Crypto-Strength: unlimited
diff --git a/makefiles/javax/crypto/policy/unlimited/default_US_export.policy b/makefiles/javax/crypto/policy/unlimited/default_US_export.policy
new file mode 100644
index 0000000..67d0acc
--- /dev/null
+++ b/makefiles/javax/crypto/policy/unlimited/default_US_export.policy
@@ -0,0 +1,5 @@
+// Manufacturing policy file.
+grant {
+ // There is no restriction to any algorithms.
+ permission javax.crypto.CryptoAllPermission;
+};
diff --git a/makefiles/javax/crypto/policy/unlimited/default_local.policy b/makefiles/javax/crypto/policy/unlimited/default_local.policy
new file mode 100644
index 0000000..8dc9702
--- /dev/null
+++ b/makefiles/javax/crypto/policy/unlimited/default_local.policy
@@ -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;
+};
diff --git a/makefiles/javax/imageio/Makefile b/makefiles/javax/imageio/Makefile
new file mode 100644
index 0000000..c73f6f5
--- /dev/null
+++ b/makefiles/javax/imageio/Makefile
@@ -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
+
diff --git a/makefiles/javax/management/Makefile b/makefiles/javax/management/Makefile
new file mode 100644
index 0000000..7887a2a
--- /dev/null
+++ b/makefiles/javax/management/Makefile
@@ -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 \
+
diff --git a/makefiles/javax/sound/FILES_c.gmk b/makefiles/javax/sound/FILES_c.gmk
new file mode 100644
index 0000000..3646393
--- /dev/null
+++ b/makefiles/javax/sound/FILES_c.gmk
@@ -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
+
diff --git a/makefiles/javax/sound/Makefile b/makefiles/javax/sound/Makefile
new file mode 100644
index 0000000..cb455a7
--- /dev/null
+++ b/makefiles/javax/sound/Makefile
@@ -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
diff --git a/makefiles/javax/sound/SoundDefs.gmk b/makefiles/javax/sound/SoundDefs.gmk
new file mode 100644
index 0000000..06c0af8
--- /dev/null
+++ b/makefiles/javax/sound/SoundDefs.gmk
@@ -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
+
+
diff --git a/makefiles/javax/sound/jsoundalsa/Makefile b/makefiles/javax/sound/jsoundalsa/Makefile
new file mode 100644
index 0000000..5fa0124
--- /dev/null
+++ b/makefiles/javax/sound/jsoundalsa/Makefile
@@ -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
+
+
+
diff --git a/makefiles/javax/sound/jsoundalsa/mapfile-vers b/makefiles/javax/sound/jsoundalsa/mapfile-vers
new file mode 100644
index 0000000..336fb3b
--- /dev/null
+++ b/makefiles/javax/sound/jsoundalsa/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/javax/sound/jsoundds/Makefile b/makefiles/javax/sound/jsoundds/Makefile
new file mode 100644
index 0000000..f476b39
--- /dev/null
+++ b/makefiles/javax/sound/jsoundds/Makefile
@@ -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
diff --git a/makefiles/javax/sound/mapfile-vers b/makefiles/javax/sound/mapfile-vers
new file mode 100644
index 0000000..f63771f
--- /dev/null
+++ b/makefiles/javax/sound/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/javax/sql/Makefile b/makefiles/javax/sql/Makefile
new file mode 100644
index 0000000..cd138cb
--- /dev/null
+++ b/makefiles/javax/sql/Makefile
@@ -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
+
diff --git a/makefiles/javax/swing/FILES.gmk b/makefiles/javax/swing/FILES.gmk
new file mode 100644
index 0000000..c1ba62f
--- /dev/null
+++ b/makefiles/javax/swing/FILES.gmk
@@ -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
diff --git a/makefiles/javax/swing/Makefile b/makefiles/javax/swing/Makefile
new file mode 100644
index 0000000..4c67858
--- /dev/null
+++ b/makefiles/javax/swing/Makefile
@@ -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)
+
diff --git a/makefiles/javax/swing/beaninfo/FILES.gmk b/makefiles/javax/swing/beaninfo/FILES.gmk
new file mode 100644
index 0000000..126d02b
--- /dev/null
+++ b/makefiles/javax/swing/beaninfo/FILES.gmk
@@ -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
diff --git a/makefiles/javax/swing/beaninfo/Makefile b/makefiles/javax/swing/beaninfo/Makefile
new file mode 100644
index 0000000..4ac5408
--- /dev/null
+++ b/makefiles/javax/swing/beaninfo/Makefile
@@ -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
+
diff --git a/makefiles/javax/swing/beaninfo/SwingBeans.gmk b/makefiles/javax/swing/beaninfo/SwingBeans.gmk
new file mode 100644
index 0000000..f053f73
--- /dev/null
+++ b/makefiles/javax/swing/beaninfo/SwingBeans.gmk
@@ -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
diff --git a/makefiles/javax/swing/beaninfo/manifest b/makefiles/javax/swing/beaninfo/manifest
new file mode 100644
index 0000000..228fcb7
--- /dev/null
+++ b/makefiles/javax/swing/beaninfo/manifest
@@ -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
+
diff --git a/makefiles/javax/swing/html32dtd/Makefile b/makefiles/javax/swing/html32dtd/Makefile
new file mode 100644
index 0000000..c24ef33
--- /dev/null
+++ b/makefiles/javax/swing/html32dtd/Makefile
@@ -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
+
diff --git a/makefiles/javax/swing/plaf/FILES.gmk b/makefiles/javax/swing/plaf/FILES.gmk
new file mode 100644
index 0000000..b30da35
--- /dev/null
+++ b/makefiles/javax/swing/plaf/FILES.gmk
@@ -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
+
diff --git a/makefiles/javax/swing/plaf/Makefile b/makefiles/javax/swing/plaf/Makefile
new file mode 100644
index 0000000..52753d6
--- /dev/null
+++ b/makefiles/javax/swing/plaf/Makefile
@@ -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)
+
diff --git a/makefiles/jpda/jdwp/jdwp.spec b/makefiles/jpda/jdwp/jdwp.spec
new file mode 100644
index 0000000..3f28a91
--- /dev/null
+++ b/makefiles/jpda/jdwp/jdwp.spec
@@ -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™ 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™ 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™ 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 \"<init>\"), "
+ "the initialization method (identified with the name \"<clinit>\") "
+ "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™ 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™ 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™ 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™ 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™ 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 \"<init>\"), "
+ "the initialization method (identified with the name \"<clinit>\") "
+ "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™ 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™ 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™ 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™ 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™ 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™ 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™ 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)")
+)
+
+
diff --git a/makefiles/jprt.gmk b/makefiles/jprt.gmk
new file mode 100644
index 0000000..cf79b82
--- /dev/null
+++ b/makefiles/jprt.gmk
@@ -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
+
diff --git a/makefiles/jprt.properties b/makefiles/jprt.properties
new file mode 100644
index 0000000..e07910e
--- /dev/null
+++ b/makefiles/jprt.properties
@@ -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
+
diff --git a/makefiles/mapfiles/launchers/mapfile-amd64 b/makefiles/mapfiles/launchers/mapfile-amd64
new file mode 100644
index 0000000..760fcc1
--- /dev/null
+++ b/makefiles/mapfiles/launchers/mapfile-amd64
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/launchers/mapfile-i586 b/makefiles/mapfiles/launchers/mapfile-i586
new file mode 100644
index 0000000..48061dd
--- /dev/null
+++ b/makefiles/mapfiles/launchers/mapfile-i586
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/launchers/mapfile-sparc b/makefiles/mapfiles/launchers/mapfile-sparc
new file mode 100644
index 0000000..ef7eaf9
--- /dev/null
+++ b/makefiles/mapfiles/launchers/mapfile-sparc
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/launchers/mapfile-sparcv9 b/makefiles/mapfiles/launchers/mapfile-sparcv9
new file mode 100644
index 0000000..5ecdf6f
--- /dev/null
+++ b/makefiles/mapfiles/launchers/mapfile-sparcv9
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libattach/mapfile-linux b/makefiles/mapfiles/libattach/mapfile-linux
new file mode 100644
index 0000000..d9b11d3
--- /dev/null
+++ b/makefiles/mapfiles/libattach/mapfile-linux
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libattach/mapfile-solaris b/makefiles/mapfiles/libattach/mapfile-solaris
new file mode 100644
index 0000000..35c160a
--- /dev/null
+++ b/makefiles/mapfiles/libattach/mapfile-solaris
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libdt_socket/mapfile-vers b/makefiles/mapfiles/libdt_socket/mapfile-vers
new file mode 100644
index 0000000..13b7361
--- /dev/null
+++ b/makefiles/mapfiles/libdt_socket/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libfontmanager/mapfile-vers b/makefiles/mapfiles/libfontmanager/mapfile-vers
new file mode 100644
index 0000000..60710b6
--- /dev/null
+++ b/makefiles/mapfiles/libfontmanager/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk b/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk
new file mode 100644
index 0000000..0dd3ece
--- /dev/null
+++ b/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libjaas/mapfile-vers b/makefiles/mapfiles/libjaas/mapfile-vers
new file mode 100644
index 0000000..b738708
--- /dev/null
+++ b/makefiles/mapfiles/libjaas/mapfile-vers
@@ -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:
+ *;
+};
+
diff --git a/makefiles/mapfiles/libjawt/mapfile-vers b/makefiles/mapfiles/libjawt/mapfile-vers
new file mode 100644
index 0000000..a7c216c
--- /dev/null
+++ b/makefiles/mapfiles/libjawt/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libjdwp/mapfile-vers b/makefiles/mapfiles/libjdwp/mapfile-vers
new file mode 100644
index 0000000..a7a6349
--- /dev/null
+++ b/makefiles/mapfiles/libjdwp/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libjpeg/mapfile-vers b/makefiles/mapfiles/libjpeg/mapfile-vers
new file mode 100644
index 0000000..2333d3d
--- /dev/null
+++ b/makefiles/mapfiles/libjpeg/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libjpeg/mapfile-vers-closed b/makefiles/mapfiles/libjpeg/mapfile-vers-closed
new file mode 100644
index 0000000..bcdc426
--- /dev/null
+++ b/makefiles/mapfiles/libjpeg/mapfile-vers-closed
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libjpeg/reorder-i586 b/makefiles/mapfiles/libjpeg/reorder-i586
new file mode 100644
index 0000000..47e18ca
--- /dev/null
+++ b/makefiles/mapfiles/libjpeg/reorder-i586
@@ -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;
diff --git a/makefiles/mapfiles/libjpeg/reorder-sparc b/makefiles/mapfiles/libjpeg/reorder-sparc
new file mode 100644
index 0000000..a7b21ed
--- /dev/null
+++ b/makefiles/mapfiles/libjpeg/reorder-sparc
@@ -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;
diff --git a/makefiles/mapfiles/libjpeg/reorder-sparcv9 b/makefiles/mapfiles/libjpeg/reorder-sparcv9
new file mode 100644
index 0000000..3af1a21
--- /dev/null
+++ b/makefiles/mapfiles/libjpeg/reorder-sparcv9
@@ -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;
diff --git a/makefiles/mapfiles/libjsdt/mapfile-vers b/makefiles/mapfiles/libjsdt/mapfile-vers
new file mode 100644
index 0000000..aea100b
--- /dev/null
+++ b/makefiles/mapfiles/libjsdt/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/liblcms/mapfile-vers b/makefiles/mapfiles/liblcms/mapfile-vers
new file mode 100644
index 0000000..ac4e745
--- /dev/null
+++ b/makefiles/mapfiles/liblcms/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libsctp/mapfile-vers b/makefiles/mapfiles/libsctp/mapfile-vers
new file mode 100644
index 0000000..ceb27da
--- /dev/null
+++ b/makefiles/mapfiles/libsctp/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libt2k/mapfile-vers b/makefiles/mapfiles/libt2k/mapfile-vers
new file mode 100644
index 0000000..4f60a42
--- /dev/null
+++ b/makefiles/mapfiles/libt2k/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libunpack/mapfile-vers b/makefiles/mapfiles/libunpack/mapfile-vers
new file mode 100644
index 0000000..d03332c
--- /dev/null
+++ b/makefiles/mapfiles/libunpack/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libunpack/mapfile-vers-unpack200 b/makefiles/mapfiles/libunpack/mapfile-vers-unpack200
new file mode 100644
index 0000000..8a659d3
--- /dev/null
+++ b/makefiles/mapfiles/libunpack/mapfile-vers-unpack200
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libverify/mapfile-vers b/makefiles/mapfiles/libverify/mapfile-vers
new file mode 100644
index 0000000..ecabd58
--- /dev/null
+++ b/makefiles/mapfiles/libverify/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libverify/reorder-i586 b/makefiles/mapfiles/libverify/reorder-i586
new file mode 100644
index 0000000..56ee8e3
--- /dev/null
+++ b/makefiles/mapfiles/libverify/reorder-i586
@@ -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;
diff --git a/makefiles/mapfiles/libverify/reorder-sparc b/makefiles/mapfiles/libverify/reorder-sparc
new file mode 100644
index 0000000..17e1346
--- /dev/null
+++ b/makefiles/mapfiles/libverify/reorder-sparc
@@ -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;
diff --git a/makefiles/mapfiles/libverify/reorder-sparcv9 b/makefiles/mapfiles/libverify/reorder-sparcv9
new file mode 100644
index 0000000..1f58d56
--- /dev/null
+++ b/makefiles/mapfiles/libverify/reorder-sparcv9
@@ -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;
diff --git a/makefiles/mapfiles/libzip/mapfile-vers b/makefiles/mapfiles/libzip/mapfile-vers
new file mode 100644
index 0000000..3f95d47
--- /dev/null
+++ b/makefiles/mapfiles/libzip/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mapfiles/libzip/reorder-i586 b/makefiles/mapfiles/libzip/reorder-i586
new file mode 100644
index 0000000..ee717ff
--- /dev/null
+++ b/makefiles/mapfiles/libzip/reorder-i586
@@ -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;
diff --git a/makefiles/mapfiles/libzip/reorder-sparc b/makefiles/mapfiles/libzip/reorder-sparc
new file mode 100644
index 0000000..176c770
--- /dev/null
+++ b/makefiles/mapfiles/libzip/reorder-sparc
@@ -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;
diff --git a/makefiles/mapfiles/libzip/reorder-sparcv9 b/makefiles/mapfiles/libzip/reorder-sparcv9
new file mode 100644
index 0000000..bf2d983
--- /dev/null
+++ b/makefiles/mapfiles/libzip/reorder-sparcv9
@@ -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;
diff --git a/makefiles/mkdemo/Makefile b/makefiles/mkdemo/Makefile
new file mode 100644
index 0000000..4cbe431
--- /dev/null
+++ b/makefiles/mkdemo/Makefile
@@ -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)
diff --git a/makefiles/mkdemo/jni/Makefile b/makefiles/mkdemo/jni/Makefile
new file mode 100644
index 0000000..b24a5f3
--- /dev/null
+++ b/makefiles/mkdemo/jni/Makefile
@@ -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)
+
diff --git a/makefiles/mkdemo/jni/Poller/Makefile b/makefiles/mkdemo/jni/Poller/Makefile
new file mode 100644
index 0000000..baf23e3
--- /dev/null
+++ b/makefiles/mkdemo/jni/Poller/Makefile
@@ -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
+
diff --git a/makefiles/mkdemo/jvmti/Makefile b/makefiles/mkdemo/jvmti/Makefile
new file mode 100644
index 0000000..88434cf
--- /dev/null
+++ b/makefiles/mkdemo/jvmti/Makefile
@@ -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)
+
diff --git a/makefiles/mkdemo/jvmti/README.txt b/makefiles/mkdemo/jvmti/README.txt
new file mode 100644
index 0000000..99e2a8f
--- /dev/null
+++ b/makefiles/mkdemo/jvmti/README.txt
@@ -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.
+
diff --git a/makefiles/mkdemo/jvmti/hprof/Makefile b/makefiles/mkdemo/jvmti/hprof/Makefile
new file mode 100644
index 0000000..e252919
--- /dev/null
+++ b/makefiles/mkdemo/jvmti/hprof/Makefile
@@ -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
+
diff --git a/makefiles/mkdemo/jvmti/mapfile-vers b/makefiles/mkdemo/jvmti/mapfile-vers
new file mode 100644
index 0000000..5d57404
--- /dev/null
+++ b/makefiles/mkdemo/jvmti/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/mkdemo/management/README.txt b/makefiles/mkdemo/management/README.txt
new file mode 100644
index 0000000..ab667a1
--- /dev/null
+++ b/makefiles/mkdemo/management/README.txt
@@ -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.
+
diff --git a/makefiles/sun/Makefile b/makefiles/sun/Makefile
new file mode 100644
index 0000000..fc4ea99
--- /dev/null
+++ b/makefiles/sun/Makefile
@@ -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)
+
diff --git a/makefiles/sun/awt/CondenseRules.awk b/makefiles/sun/awt/CondenseRules.awk
new file mode 100644
index 0000000..89cfd68
--- /dev/null
+++ b/makefiles/sun/awt/CondenseRules.awk
@@ -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";
+}
diff --git a/makefiles/sun/awt/Depend.mak b/makefiles/sun/awt/Depend.mak
new file mode 100644
index 0000000..95e5615
--- /dev/null
+++ b/makefiles/sun/awt/Depend.mak
@@ -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
diff --git a/makefiles/sun/awt/Depend.sed b/makefiles/sun/awt/Depend.sed
new file mode 100644
index 0000000..00a4bdd
--- /dev/null
+++ b/makefiles/sun/awt/Depend.sed
@@ -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:/
diff --git a/makefiles/sun/awt/FILES_c_macosx.gmk b/makefiles/sun/awt/FILES_c_macosx.gmk
new file mode 100644
index 0000000..adf5a9a
--- /dev/null
+++ b/makefiles/sun/awt/FILES_c_macosx.gmk
@@ -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
+
diff --git a/makefiles/sun/awt/FILES_c_unix.gmk b/makefiles/sun/awt/FILES_c_unix.gmk
new file mode 100644
index 0000000..55a387e
--- /dev/null
+++ b/makefiles/sun/awt/FILES_c_unix.gmk
@@ -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
diff --git a/makefiles/sun/awt/FILES_c_windows.gmk b/makefiles/sun/awt/FILES_c_windows.gmk
new file mode 100644
index 0000000..ec512b7
--- /dev/null
+++ b/makefiles/sun/awt/FILES_c_windows.gmk
@@ -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
diff --git a/makefiles/sun/awt/FILES_export_macosx.gmk b/makefiles/sun/awt/FILES_export_macosx.gmk
new file mode 100644
index 0000000..8975d6d
--- /dev/null
+++ b/makefiles/sun/awt/FILES_export_macosx.gmk
@@ -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
diff --git a/makefiles/sun/awt/FILES_export_unix.gmk b/makefiles/sun/awt/FILES_export_unix.gmk
new file mode 100644
index 0000000..5cd8a01
--- /dev/null
+++ b/makefiles/sun/awt/FILES_export_unix.gmk
@@ -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
+
diff --git a/makefiles/sun/awt/FILES_export_windows.gmk b/makefiles/sun/awt/FILES_export_windows.gmk
new file mode 100644
index 0000000..81e90e8
--- /dev/null
+++ b/makefiles/sun/awt/FILES_export_windows.gmk
@@ -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
diff --git a/makefiles/sun/awt/Makefile b/makefiles/sun/awt/Makefile
new file mode 100644
index 0000000..7703027
--- /dev/null
+++ b/makefiles/sun/awt/Makefile
@@ -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
+
diff --git a/makefiles/sun/awt/README b/makefiles/sun/awt/README
new file mode 100644
index 0000000..2fe5bb6
--- /dev/null
+++ b/makefiles/sun/awt/README
@@ -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****
diff --git a/makefiles/sun/awt/make.depend b/makefiles/sun/awt/make.depend
new file mode 100644
index 0000000..02b3b16
--- /dev/null
+++ b/makefiles/sun/awt/make.depend
@@ -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
diff --git a/makefiles/sun/awt/mapfile-mawt-vers b/makefiles/sun/awt/mapfile-mawt-vers
new file mode 100644
index 0000000..6cc59bd
--- /dev/null
+++ b/makefiles/sun/awt/mapfile-mawt-vers
@@ -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:
+ *;
+};
+
diff --git a/makefiles/sun/awt/mapfile-vers b/makefiles/sun/awt/mapfile-vers
new file mode 100644
index 0000000..5c6cfea
--- /dev/null
+++ b/makefiles/sun/awt/mapfile-vers
@@ -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:
+ *;
+};
+
diff --git a/makefiles/sun/awt/mapfile-vers-linux b/makefiles/sun/awt/mapfile-vers-linux
new file mode 100644
index 0000000..b7033b8
--- /dev/null
+++ b/makefiles/sun/awt/mapfile-vers-linux
@@ -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:
+ *;
+};
+
diff --git a/makefiles/sun/awt/mawt.gmk b/makefiles/sun/awt/mawt.gmk
new file mode 100644
index 0000000..e0dd783
--- /dev/null
+++ b/makefiles/sun/awt/mawt.gmk
@@ -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
+
diff --git a/makefiles/sun/cmm/Makefile b/makefiles/sun/cmm/Makefile
new file mode 100644
index 0000000..1f61106
--- /dev/null
+++ b/makefiles/sun/cmm/Makefile
@@ -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
diff --git a/makefiles/sun/cmm/kcms/FILES_c_unix.gmk b/makefiles/sun/cmm/kcms/FILES_c_unix.gmk
new file mode 100644
index 0000000..cd20c77
--- /dev/null
+++ b/makefiles/sun/cmm/kcms/FILES_c_unix.gmk
@@ -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
diff --git a/makefiles/sun/cmm/kcms/FILES_c_windows.gmk b/makefiles/sun/cmm/kcms/FILES_c_windows.gmk
new file mode 100644
index 0000000..de1a929
--- /dev/null
+++ b/makefiles/sun/cmm/kcms/FILES_c_windows.gmk
@@ -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
diff --git a/makefiles/sun/cmm/kcms/Makefile b/makefiles/sun/cmm/kcms/Makefile
new file mode 100644
index 0000000..50b5256
--- /dev/null
+++ b/makefiles/sun/cmm/kcms/Makefile
@@ -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
+
diff --git a/makefiles/sun/cmm/kcms/mapfile-vers b/makefiles/sun/cmm/kcms/mapfile-vers
new file mode 100644
index 0000000..33b0d30
--- /dev/null
+++ b/makefiles/sun/cmm/kcms/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/dcpr/FILES_c.gmk b/makefiles/sun/dcpr/FILES_c.gmk
new file mode 100644
index 0000000..898f66e
--- /dev/null
+++ b/makefiles/sun/dcpr/FILES_c.gmk
@@ -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 \
diff --git a/makefiles/sun/dcpr/Makefile b/makefiles/sun/dcpr/Makefile
new file mode 100644
index 0000000..fb22b1d
--- /dev/null
+++ b/makefiles/sun/dcpr/Makefile
@@ -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
+
diff --git a/makefiles/sun/dcpr/mapfile-vers b/makefiles/sun/dcpr/mapfile-vers
new file mode 100644
index 0000000..9662897
--- /dev/null
+++ b/makefiles/sun/dcpr/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/headless/Makefile b/makefiles/sun/headless/Makefile
new file mode 100644
index 0000000..2b3aae4
--- /dev/null
+++ b/makefiles/sun/headless/Makefile
@@ -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
+
diff --git a/makefiles/sun/headless/mapfile-vers b/makefiles/sun/headless/mapfile-vers
new file mode 100644
index 0000000..0d0de5a
--- /dev/null
+++ b/makefiles/sun/headless/mapfile-vers
@@ -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:
+ *;
+};
+
diff --git a/makefiles/sun/headless/reorder-i586 b/makefiles/sun/headless/reorder-i586
new file mode 100644
index 0000000..84e923b
--- /dev/null
+++ b/makefiles/sun/headless/reorder-i586
@@ -0,0 +1 @@
+# Temporary file for headless
diff --git a/makefiles/sun/headless/reorder-sparc b/makefiles/sun/headless/reorder-sparc
new file mode 100644
index 0000000..84e923b
--- /dev/null
+++ b/makefiles/sun/headless/reorder-sparc
@@ -0,0 +1 @@
+# Temporary file for headless
diff --git a/makefiles/sun/headless/reorder-sparcv9 b/makefiles/sun/headless/reorder-sparcv9
new file mode 100644
index 0000000..84e923b
--- /dev/null
+++ b/makefiles/sun/headless/reorder-sparcv9
@@ -0,0 +1 @@
+# Temporary file for headless
diff --git a/makefiles/sun/image/Makefile b/makefiles/sun/image/Makefile
new file mode 100644
index 0000000..7056ed9
--- /dev/null
+++ b/makefiles/sun/image/Makefile
@@ -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)
+
diff --git a/makefiles/sun/image/generic/FILES_c.gmk b/makefiles/sun/image/generic/FILES_c.gmk
new file mode 100644
index 0000000..dda8c40
--- /dev/null
+++ b/makefiles/sun/image/generic/FILES_c.gmk
@@ -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) \
+
diff --git a/makefiles/sun/image/generic/Makefile b/makefiles/sun/image/generic/Makefile
new file mode 100644
index 0000000..d68eae0
--- /dev/null
+++ b/makefiles/sun/image/generic/Makefile
@@ -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
+
diff --git a/makefiles/sun/image/generic/mapfile-vers b/makefiles/sun/image/generic/mapfile-vers
new file mode 100644
index 0000000..0bb0d74
--- /dev/null
+++ b/makefiles/sun/image/generic/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/image/vis/FILES_c.gmk b/makefiles/sun/image/vis/FILES_c.gmk
new file mode 100644
index 0000000..8f61ba6
--- /dev/null
+++ b/makefiles/sun/image/vis/FILES_c.gmk
@@ -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) \
+
diff --git a/makefiles/sun/image/vis/Makefile b/makefiles/sun/image/vis/Makefile
new file mode 100644
index 0000000..6281803
--- /dev/null
+++ b/makefiles/sun/image/vis/Makefile
@@ -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)
+
diff --git a/makefiles/sun/javazic/Makefile b/makefiles/sun/javazic/Makefile
new file mode 100644
index 0000000..cbe9b66
--- /dev/null
+++ b/makefiles/sun/javazic/Makefile
@@ -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)
diff --git a/makefiles/sun/jdbc/Makefile b/makefiles/sun/jdbc/Makefile
new file mode 100644
index 0000000..b5751d1
--- /dev/null
+++ b/makefiles/sun/jdbc/Makefile
@@ -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
+
diff --git a/makefiles/sun/jdga/Makefile b/makefiles/sun/jdga/Makefile
new file mode 100644
index 0000000..7c3c2b5
--- /dev/null
+++ b/makefiles/sun/jdga/Makefile
@@ -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)
diff --git a/makefiles/sun/jdga/mapfile-vers b/makefiles/sun/jdga/mapfile-vers
new file mode 100644
index 0000000..d895b20
--- /dev/null
+++ b/makefiles/sun/jdga/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/jkernel/Makefile b/makefiles/sun/jkernel/Makefile
new file mode 100644
index 0000000..5abf87b
--- /dev/null
+++ b/makefiles/sun/jkernel/Makefile
@@ -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
diff --git a/makefiles/sun/lwawt/FILES_c_macosx.gmk b/makefiles/sun/lwawt/FILES_c_macosx.gmk
new file mode 100644
index 0000000..05b2d14
--- /dev/null
+++ b/makefiles/sun/lwawt/FILES_c_macosx.gmk
@@ -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
+
diff --git a/makefiles/sun/lwawt/FILES_export_macosx.gmk b/makefiles/sun/lwawt/FILES_export_macosx.gmk
new file mode 100644
index 0000000..43710d7
--- /dev/null
+++ b/makefiles/sun/lwawt/FILES_export_macosx.gmk
@@ -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
diff --git a/makefiles/sun/lwawt/Makefile b/makefiles/sun/lwawt/Makefile
new file mode 100644
index 0000000..6c0742f
--- /dev/null
+++ b/makefiles/sun/lwawt/Makefile
@@ -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:
diff --git a/makefiles/sun/nio/Makefile b/makefiles/sun/nio/Makefile
new file mode 100644
index 0000000..905deeb
--- /dev/null
+++ b/makefiles/sun/nio/Makefile
@@ -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)
+
diff --git a/makefiles/sun/nio/cs/FILES_java.gmk b/makefiles/sun/nio/cs/FILES_java.gmk
new file mode 100644
index 0000000..05d722b
--- /dev/null
+++ b/makefiles/sun/nio/cs/FILES_java.gmk
@@ -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)
+
diff --git a/makefiles/sun/nio/cs/Makefile b/makefiles/sun/nio/cs/Makefile
new file mode 100644
index 0000000..760b1b1
--- /dev/null
+++ b/makefiles/sun/nio/cs/Makefile
@@ -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)
diff --git a/makefiles/sun/org/Makefile b/makefiles/sun/org/Makefile
new file mode 100644
index 0000000..a992cde
--- /dev/null
+++ b/makefiles/sun/org/Makefile
@@ -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)
+
diff --git a/makefiles/sun/org/mozilla/Makefile b/makefiles/sun/org/mozilla/Makefile
new file mode 100644
index 0000000..0805da6
--- /dev/null
+++ b/makefiles/sun/org/mozilla/Makefile
@@ -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)
+
diff --git a/makefiles/sun/org/mozilla/javascript/Makefile b/makefiles/sun/org/mozilla/javascript/Makefile
new file mode 100644
index 0000000..f381b94
--- /dev/null
+++ b/makefiles/sun/org/mozilla/javascript/Makefile
@@ -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
diff --git a/makefiles/sun/osxapp/Makefile b/makefiles/sun/osxapp/Makefile
new file mode 100644
index 0000000..7c47edd
--- /dev/null
+++ b/makefiles/sun/osxapp/Makefile
@@ -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:
diff --git a/makefiles/sun/security/Makefile b/makefiles/sun/security/Makefile
new file mode 100644
index 0000000..14b651d
--- /dev/null
+++ b/makefiles/sun/security/Makefile
@@ -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
diff --git a/makefiles/sun/security/ec/FILES_c.gmk b/makefiles/sun/security/ec/FILES_c.gmk
new file mode 100644
index 0000000..278cb21
--- /dev/null
+++ b/makefiles/sun/security/ec/FILES_c.gmk
@@ -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
+
diff --git a/makefiles/sun/security/ec/Makefile b/makefiles/sun/security/ec/Makefile
new file mode 100644
index 0000000..146a24e
--- /dev/null
+++ b/makefiles/sun/security/ec/Makefile
@@ -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
diff --git a/makefiles/sun/security/ec/mapfile-vers b/makefiles/sun/security/ec/mapfile-vers
new file mode 100644
index 0000000..c7c6c6c
--- /dev/null
+++ b/makefiles/sun/security/ec/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/security/jgss/Makefile b/makefiles/sun/security/jgss/Makefile
new file mode 100644
index 0000000..e8dbb6c
--- /dev/null
+++ b/makefiles/sun/security/jgss/Makefile
@@ -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
diff --git a/makefiles/sun/security/jgss/wrapper/FILES_c.gmk b/makefiles/sun/security/jgss/wrapper/FILES_c.gmk
new file mode 100644
index 0000000..438168c
--- /dev/null
+++ b/makefiles/sun/security/jgss/wrapper/FILES_c.gmk
@@ -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
diff --git a/makefiles/sun/security/jgss/wrapper/Makefile b/makefiles/sun/security/jgss/wrapper/Makefile
new file mode 100644
index 0000000..91fdf90
--- /dev/null
+++ b/makefiles/sun/security/jgss/wrapper/Makefile
@@ -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
+
diff --git a/makefiles/sun/security/jgss/wrapper/mapfile-vers b/makefiles/sun/security/jgss/wrapper/mapfile-vers
new file mode 100644
index 0000000..fe5c538
--- /dev/null
+++ b/makefiles/sun/security/jgss/wrapper/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/security/krb5/FILES_c_windows.gmk b/makefiles/sun/security/krb5/FILES_c_windows.gmk
new file mode 100644
index 0000000..82d5b6b
--- /dev/null
+++ b/makefiles/sun/security/krb5/FILES_c_windows.gmk
@@ -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
diff --git a/makefiles/sun/security/krb5/Makefile b/makefiles/sun/security/krb5/Makefile
new file mode 100644
index 0000000..02ac6e9
--- /dev/null
+++ b/makefiles/sun/security/krb5/Makefile
@@ -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
diff --git a/makefiles/sun/security/mscapi/FILES_cpp.gmk b/makefiles/sun/security/mscapi/FILES_cpp.gmk
new file mode 100644
index 0000000..20ee872
--- /dev/null
+++ b/makefiles/sun/security/mscapi/FILES_cpp.gmk
@@ -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
+
diff --git a/makefiles/sun/security/mscapi/Makefile b/makefiles/sun/security/mscapi/Makefile
new file mode 100644
index 0000000..389d5a1
--- /dev/null
+++ b/makefiles/sun/security/mscapi/Makefile
@@ -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
diff --git a/makefiles/sun/security/other/Makefile b/makefiles/sun/security/other/Makefile
new file mode 100644
index 0000000..37293aa
--- /dev/null
+++ b/makefiles/sun/security/other/Makefile
@@ -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
diff --git a/makefiles/sun/security/pkcs11/FILES_c.gmk b/makefiles/sun/security/pkcs11/FILES_c.gmk
new file mode 100644
index 0000000..328547a
--- /dev/null
+++ b/makefiles/sun/security/pkcs11/FILES_c.gmk
@@ -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
+
diff --git a/makefiles/sun/security/pkcs11/Makefile b/makefiles/sun/security/pkcs11/Makefile
new file mode 100644
index 0000000..7f9c1c7
--- /dev/null
+++ b/makefiles/sun/security/pkcs11/Makefile
@@ -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
diff --git a/makefiles/sun/security/pkcs11/mapfile-vers b/makefiles/sun/security/pkcs11/mapfile-vers
new file mode 100644
index 0000000..7301c11
--- /dev/null
+++ b/makefiles/sun/security/pkcs11/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/security/smartcardio/FILES_c.gmk b/makefiles/sun/security/smartcardio/FILES_c.gmk
new file mode 100644
index 0000000..67b760e
--- /dev/null
+++ b/makefiles/sun/security/smartcardio/FILES_c.gmk
@@ -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
diff --git a/makefiles/sun/security/smartcardio/Makefile b/makefiles/sun/security/smartcardio/Makefile
new file mode 100644
index 0000000..c98e978
--- /dev/null
+++ b/makefiles/sun/security/smartcardio/Makefile
@@ -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
diff --git a/makefiles/sun/security/smartcardio/mapfile-vers b/makefiles/sun/security/smartcardio/mapfile-vers
new file mode 100644
index 0000000..a565f41
--- /dev/null
+++ b/makefiles/sun/security/smartcardio/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/security/tools/Makefile b/makefiles/sun/security/tools/Makefile
new file mode 100644
index 0000000..94f692a
--- /dev/null
+++ b/makefiles/sun/security/tools/Makefile
@@ -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
+
diff --git a/makefiles/sun/security/util/Makefile b/makefiles/sun/security/util/Makefile
new file mode 100644
index 0000000..be7c7f8
--- /dev/null
+++ b/makefiles/sun/security/util/Makefile
@@ -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
+
diff --git a/makefiles/sun/splashscreen/FILES_c.gmk b/makefiles/sun/splashscreen/FILES_c.gmk
new file mode 100644
index 0000000..f55b8d7
--- /dev/null
+++ b/makefiles/sun/splashscreen/FILES_c.gmk
@@ -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
diff --git a/makefiles/sun/splashscreen/Makefile b/makefiles/sun/splashscreen/Makefile
new file mode 100644
index 0000000..8ca6c35
--- /dev/null
+++ b/makefiles/sun/splashscreen/Makefile
@@ -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
diff --git a/makefiles/sun/splashscreen/mapfile-vers b/makefiles/sun/splashscreen/mapfile-vers
new file mode 100644
index 0000000..c7e29bd
--- /dev/null
+++ b/makefiles/sun/splashscreen/mapfile-vers
@@ -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:
+ *;
+};
diff --git a/makefiles/sun/xawt/FILES_c_unix.gmk b/makefiles/sun/xawt/FILES_c_unix.gmk
new file mode 100644
index 0000000..0ce8bdd
--- /dev/null
+++ b/makefiles/sun/xawt/FILES_c_unix.gmk
@@ -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
diff --git a/makefiles/sun/xawt/FILES_export_unix.gmk b/makefiles/sun/xawt/FILES_export_unix.gmk
new file mode 100644
index 0000000..5d8d624
--- /dev/null
+++ b/makefiles/sun/xawt/FILES_export_unix.gmk
@@ -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
diff --git a/makefiles/sun/xawt/Makefile b/makefiles/sun/xawt/Makefile
new file mode 100644
index 0000000..14409bd
--- /dev/null
+++ b/makefiles/sun/xawt/Makefile
@@ -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
+
diff --git a/makefiles/sun/xawt/ToBin.java b/makefiles/sun/xawt/ToBin.java
new file mode 100644
index 0000000..99f3788
--- /dev/null
+++ b/makefiles/sun/xawt/ToBin.java
@@ -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();
+ }
+ }
+ }
+}
diff --git a/makefiles/sun/xawt/mapfile-vers b/makefiles/sun/xawt/mapfile-vers
new file mode 100644
index 0000000..5455530
--- /dev/null
+++ b/makefiles/sun/xawt/mapfile-vers
@@ -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:
+ *;
+};