--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/gibbons.patch Tue Jan 20 23:10:57 2009 -0800
@@ -0,0 +1,2858 @@
+see http://mail.openjdk.java.net/pipermail/compiler-dev/2008-December/000808.html
+
+diff --git a/make/README b/make/README
+--- a/make/README
++++ b/make/README
+@@ -15,7 +15,7 @@
+
+ System Requirements:
+ Ant: version 1.6.5 or later
+- NetBeans: version 5.0 or later (optional)
++ NetBeans: version 6.0 or later (optional)
+ JDK: currently version 1.5.0, although 1.6.0 is recommended
+ OS: any system supporting the above tools
+
+diff --git a/make/build.xml b/make/build.xml
+--- a/make/build.xml
++++ b/make/build.xml
+@@ -653,7 +653,7 @@
+ <!-- the next two properties are for convenience, when only
+ a single instance of jtreg will be invoked. -->
+ <condition property="jtreg.passed">
+- <equals arg1="${jtreg.javac.result}" arg2="0"/>
++ <equals arg1="${jtreg.@{name}.result}" arg2="0"/>
+ </condition>
+ <property name="jtreg.report" value="${build.jtreg.dir}/@{name}/report"/>
+ </sequential>
+diff --git a/make/netbeans/README b/make/netbeans/README
+--- a/make/netbeans/README
++++ b/make/netbeans/README
+@@ -1,28 +1,39 @@
+-Working on the "langtools" workspace using NetBeans.
++Using NetBeans to work on the langtools repository.
+
+-This directory (make/netbeans) contains NetBeans projects that
+-allow you to work on the various tools using the NetBeans IDE.
++Netbeans 6.0 or later is recommended.
+
+-NetBeans 5.0 or later is required and sufficient to use these
+-projects. This is different from other projects in OpenJDK,
+-which requires version 6.0 or later.
++The "langtools" project in this directory allows you to
++edit, run, test and debug the tools in the OpenJDK langtools
++repository.
+
+-The following projects are provided:
++The repository contains a number of tools:
++ apt, javac, javadoc and its doclets, javah and javap.
+
+-compiler: for working on the compiler, javac
+-javadoc: for working on the documentation tool, javadoc
+-doclets: for working on the standard doclets used by the
+- documentation tool, javadoc
+-javah: for working on the C header tool, javah
+-javap: for working on the disassembler, javap
+-apt: for working on the annotation processing tool, apt.
+- Note that this is just provided for completeness;
+- the tool has been superceded by new features in javac,
+- and work on apt itself is discouraged.
++Build Properties.
+
+-However, any tool can be worked on from any project; the only difference
+-between these projects is the behavior of the standard NetBeans actions,
+-so that "Build" in the compiler project will build the compiler, etc.
++To build this repository, you must set some properties for Ant.
++You can set these properties in a number of ways:
+
++- Set the properties in the Properties panel under Tool> Options> Ant.
++ Properties set this way will apply globally to all the langtools
++ repositories you may be working on.
+
++- Create a file build.properties in the root directory of a
++ langtools repository, and set the properties in that file.
++ These properties will be specific to that repository.
+
++To build the repository, at a minimum you must set the "boot.java.home"
++property. To run the tools, you must also set "target.java.home". To
++run the regression tests, you must set "jtreg.home".
++
++By default, the build and test targets will build and test all
++of these tools. The run and debug targets will prompt you for the
++name of a tool to execute.
++
++As an alternative, you can focus on a single tool. When you do
++this, you will still see all the source code for all the tools,
++but the various Ant targets will now be focussed on the selected tool.
++To focus on a tool, bring up the context menu on the "langtools"
++project (i.e. right-click on the project) and select "Select Tool".
++This brings up a dialog which allows you to specify which tool you
++wish to work on, and the arguments to use if and when you run it.
+diff --git a/make/netbeans/apt/README b/make/netbeans/apt/README
+deleted file mode 100644
+--- a/make/netbeans/apt/README
++++ /dev/null
+@@ -1,15 +0,0 @@
+-"apt" project README.
+-
+-This project is for working on the annotation processing tool (apt)
+-in the OpenJDK langtools component.
+-
+-The tool was provided in Java 1.5, but has been superceded by new
+-features in the compiler (javac) in Java 6. apt itself is now
+-deprecated, and any further devlopment on it is strongly discouraged.
+-
+-The main class for the tool is com.sun.tools.apt.Main.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/apt/build.xml b/make/netbeans/apt/build.xml
+deleted file mode 100644
+--- a/make/netbeans/apt/build.xml
++++ /dev/null
+@@ -1,62 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the annotation processing tool, apt.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+- This tool is now deprecated, and any further development is strongly
+- discouraged.
+--->
+-
+-<project name="apt" default="build" basedir="../../..">
+- <property name="tool.name" value="apt"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-apt" description="Build the annotation processing tool, apt."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the annotation processing tool, apt."/>
+-
+- <target name="-jtreg" depends="jtreg-apt"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the annotation processing tool, apt."/>
+-
+-</project>
+diff --git a/make/netbeans/apt/nbproject/project.xml b/make/netbeans/apt/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/apt/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions-no-javadoc SYSTEM "../../common/standard-ide-actions-no-javadoc.ent">
+- <!ENTITY standard-context-menu-items-no-javadoc SYSTEM "../../common/standard-context-menu-items-no-javadoc.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>apt</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions-no-javadoc;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items-no-javadoc;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/common/shared.xml b/make/netbeans/common/shared.xml
+deleted file mode 100644
+--- a/make/netbeans/common/shared.xml
++++ /dev/null
+@@ -1,186 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- The file contains targets for NetBeans action that are shared across
+- all langtools projects.
+--->
+-
+-<project name="shared" default="build" basedir="../../..">
+- <!--
+- Instead of importing the main build file, we could call it when needed.
+- That would reduce the list of Ant targets that get displayed for this
+- file, but it also complicates the interface between the project build
+- file and the main build file. For example, some imported targets
+- would have to be reclared, properties would have to be restructured,
+- and it would be harder to run results (e.g. in properties) from nested
+- targets.
+- -->
+- <import file="../../build.xml"/>
+-
+- <property name="tool.mainclass" value="com.sun.tools.${tool.name}.Main"/>
+- <property name="tool.default.args" value="-version"/>
+-
+- <!-- compile a single file -->
+-
+- <!-- for compile-single, etc, we might want different targets for
+- javac and not javac, because of bootstrap issues -->
+- <target name="compile-single" depends="build-bootstrap-javac">
+- <fail unless="includes">Must set property 'includes'</fail>
+- <javac fork="true" executable="${build.bootstrap.dir}/bin/javac"
+- srcdir="${src.classes.dir}"
+- destdir="${build.classes.dir}"
+- includes="${includes}"
+- sourcepath=""
+- includeAntRuntime="no"
+- target="${target}"
+- debug="${javac.debug}"
+- debuglevel="${javac.debuglevel}"/>
+- </target>
+-
+- <!-- run tool -->
+-
+- <target name="run" depends="build,-def-run" description="run ${tool.description}">
+- <run/>
+- </target>
+-
+- <!-- run a selected class -->
+-
+- <target name="run-single" depends="-def-run">
+- <fail unless="run.classname">Must set property 'run.classname'</fail>
+- <run name="${run.classname}" mainclass="${run.classname}" default.args=""/>
+- </target>
+-
+- <!-- run jtreg tests, and display results in NetBeans -->
+-
+- <target name="-jtreg-nb" depends="-jtreg" if="netbeans.home" unless="jtreg.passed">
+- <nbbrowse file="${jtreg.report}/report.html"/>
+- <fail>Some tests failed; see report for details.</fail>
+- </target>
+-
+- <!-- debug tool in NetBeans -->
+-
+- <target name="-debug-nb" depends="build,-def-run,-def-start-debugger" if="netbeans.home">
+- <start-debugger/>
+- <run jpda.jvmargs="${jpda.jvmargs}"/>
+- </target>
+-
+- <!-- debug a selected class -->
+-
+- <target name="debug-single-nb" depends="-def-start-debugger,-def-run">
+- <fail unless="debug.classname">Must set property 'debug.classname'</fail>
+- <start-debugger/>
+- <run name="${debug.classname}" mainclass="${debug.classname}" default.args=""
+- jpda.jvmargs="${jpda.jvmargs}"/>
+- </target>
+-
+- <!-- debug a jtreg test -->
+-
+- <target name="debug-jtreg-nb" depends="-def-start-debugger,-def-jtreg">
+- <fail unless="jtreg.tests">Must set property 'jtreg.tests'</fail>
+- <start-debugger/>
+- <jtreg-tool name="${tool.name}" samevm="false" tests="${jtreg.tests}"
+- jpda.jvmargs="${jpda.jvmargs}"/>
+- </target>
+-
+- <!-- update a class being debugged -->
+-
+- <target name="debug-fix">
+- <fail unless="class">Must set property 'class'</fail>
+- <antcall target="compile-single">
+- <param name="includes" value="${class}.java"/>
+- </antcall>
+- <nbjpdareload>
+- <fileset dir="${build.classes.dir}">
+- <include name="${class}.class"/>
+- </fileset>
+- </nbjpdareload>
+- </target>
+-
+-
+- <!-- create javadoc documentation -->
+-
+- <target name="-javadoc-nb" depends="-javadoc" if="netbeans.home">
+- <nbbrowse file="${build.javadoc.dir}/${tool.name}/index.html"/>
+- </target>
+-
+- <!-- default target for those projects that don't have public API docs;
+- override as needed for projects with public API docs.-->
+- <target name="-javadoc"/>
+-
+- <!-- macro to run a tool or selected class - used by run* and debug* tasks -->
+-
+- <target name="-def-run">
+- <macrodef name="run">
+- <attribute name="name" default="${tool.name}"/>
+- <attribute name="mainclass" default="${tool.mainclass}"/>
+- <attribute name="default.args" default="${tool.default.args}"/>
+- <attribute name="jpda.jvmargs" default=""/>
+- <sequential>
+- <input addproperty="run.args" message="Run @{name} with options" defaultvalue="@{default.args}"/>
+- <java fork="true" jvm="${target.java}" classname="@{mainclass}">
+- <bootclasspath>
+- <pathelement location="${build.classes.dir}"/>
+- <pathelement location="${target.java.home}/jre/lib/rt.jar"/>
+- </bootclasspath>
+- <jvmarg line="@{jpda.jvmargs}"/>
+- <arg line="${run.args}"/>
+- </java>
+- </sequential>
+- </macrodef>
+- </target>
+-
+- <!-- macro to start the debugger and set a property containg the args needed by the run task -->
+-
+- <target name="-def-start-debugger" if="netbeans.home">
+- <macrodef name="start-debugger">
+- <attribute name="jpda.jvmargs.property" default="jpda.jvmargs"/>
+- <sequential>
+- <nbjpdastart name="${ant.project.name}" addressproperty="jpda.address" transport="dt_socket">
+- <bootclasspath>
+- <pathelement location="${build.classes.dir}"/>
+- <pathelement location="${target.java.home}/jre/lib/rt.jar"/>
+- </bootclasspath>
+- <sourcepath>
+- <pathelement location="${src.classes.dir}"/>
+- </sourcepath>
+- </nbjpdastart>
+- <property
+- name="@{jpda.jvmargs.property}"
+- value="-Xdebug -Xnoagent -Djava.compiler=none -Xrunjdwp:transport=dt_socket,address=${jpda.address}"
+- />
+- </sequential>
+- </macrodef>
+- </target>
+-
+-
+-</project>
+diff --git a/make/netbeans/common/standard-context-menu-items-no-javadoc.ent b/make/netbeans/common/standard-context-menu-items-no-javadoc.ent
+deleted file mode 100644
+--- a/make/netbeans/common/standard-context-menu-items-no-javadoc.ent
++++ /dev/null
+@@ -1,56 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- This file defines the actions that will appear on the project's context
+- menu, in the Projects viewer.
+- It is normally included as an entity into a project's project.xml file.
+-
+- For information on these actions, see
+- - NetBeans: Setting Up Projects
+- at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
+- - NetBeans: Advanced Freeform Project Configuration
+- at http://www.netbeans.org/kb/41/freeform-config.html
+--->
+-
+-<ide-action name="build"/>
+-<ide-action name="rebuild"/>
+-<ide-action name="clean"/>
+-
+-<separator/>
+-
+-<ide-action name="run"/>
+-<ide-action name="debug"/>
+-
+-<separator/>
+-
+-<ide-action name="test"/>
+diff --git a/make/netbeans/common/standard-context-menu-items.ent b/make/netbeans/common/standard-context-menu-items.ent
+deleted file mode 100644
+--- a/make/netbeans/common/standard-context-menu-items.ent
++++ /dev/null
+@@ -1,57 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- This file defines the actions that will appear on the project's context
+- menu, in the Projects viewer.
+- It is normally included as an entity into a project's project.xml file.
+-
+- For information on these actions, see
+- - NetBeans: Setting Up Projects
+- at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
+- - NetBeans: Advanced Freeform Project Configuration
+- at http://www.netbeans.org/kb/41/freeform-config.html
+--->
+-
+-<ide-action name="build"/>
+-<ide-action name="rebuild"/>
+-<ide-action name="clean"/>
+-<ide-action name="javadoc"/>
+-
+-<separator/>
+-
+-<ide-action name="run"/>
+-<ide-action name="debug"/>
+-
+-<separator/>
+-
+-<ide-action name="test"/>
+diff --git a/make/netbeans/common/standard-ide-actions-no-javadoc.ent b/make/netbeans/common/standard-ide-actions-no-javadoc.ent
+deleted file mode 100644
+--- a/make/netbeans/common/standard-ide-actions-no-javadoc.ent
++++ /dev/null
+@@ -1,161 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- This file defines the standard actions accepted by langtools projects.
+- It is normally included as an entity into a project's project.xml file.
+-
+- For information on these actions, see
+- - NetBeans: Setting Up Projects
+- at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
+- - NetBeans: Advanced Freeform Project Configuration
+- at http://www.netbeans.org/kb/41/freeform-config.html
+--->
+-
+-<action name="build">
+- <target>build</target>
+-</action>
+-
+-<action name="clean">
+- <target>clean</target>
+-</action>
+-
+-<action name="rebuild">
+- <target>clean</target>
+- <target>build</target>
+-</action>
+-
+-<action name="compile.single">
+- <target>compile-single</target>
+- <property name="srcdir">${root}/src/share/classes</property>
+- <context>
+- <property>includes</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <separated-files>,</separated-files>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="run">
+- <target>run</target>
+-</action>
+-
+-<action name="run.single">
+- <target>run-single</target>
+- <context>
+- <property>run.classname</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>java-name</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<!--
+- Note: NetBeans does not appear to support context menu items
+- on shell scripts :-(
+--->
+-
+-<action name="run.single">
+- <target>jtreg</target>
+- <context>
+- <property>jtreg.tests</property>
+- <folder>${root}/test</folder>
+- <pattern>\.(java|sh)$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <separated-files>,</separated-files>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="test">
+- <target>jtreg</target>
+-</action>
+-
+-<action name="debug">
+- <target>debug-nb</target>
+-</action>
+-
+-<action name="debug.single">
+- <target>debug-single-nb</target>
+- <context>
+- <property>debug.classname</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>java-name</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<!--
+- Note: NetBeans does not appear to support context menu items
+- on shell scripts :-(
+--->
+-
+-<action name="debug.single">
+- <target>debug-jtreg-nb</target>
+- <context>
+- <property>jtreg.tests</property>
+- <folder>${root}/test</folder>
+- <pattern>\.(java|sh)$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="debug.fix">
+- <target>debug-fix</target>
+- <property name="srcdir">${root}/src/share/classes</property>
+- <context>
+- <property>class</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>relative-path-noext</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="javadoc">
+- <target>-javadoc-nb</target>
+-</action>
+diff --git a/make/netbeans/common/standard-ide-actions.ent b/make/netbeans/common/standard-ide-actions.ent
+deleted file mode 100644
+--- a/make/netbeans/common/standard-ide-actions.ent
++++ /dev/null
+@@ -1,161 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- This file defines the standard actions accepted by langtools projects.
+- It is normally included as an entity into a project's project.xml file.
+-
+- For information on these actions, see
+- - NetBeans: Setting Up Projects
+- at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
+- - NetBeans: Advanced Freeform Project Configuration
+- at http://www.netbeans.org/kb/41/freeform-config.html
+--->
+-
+-<action name="build">
+- <target>build</target>
+-</action>
+-
+-<action name="clean">
+- <target>clean</target>
+-</action>
+-
+-<action name="rebuild">
+- <target>clean</target>
+- <target>build</target>
+-</action>
+-
+-<action name="compile.single">
+- <target>compile-single</target>
+- <property name="srcdir">${root}/src/share/classes</property>
+- <context>
+- <property>includes</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <separated-files>,</separated-files>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="run">
+- <target>run</target>
+-</action>
+-
+-<action name="run.single">
+- <target>run-single</target>
+- <context>
+- <property>run.classname</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>java-name</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<!--
+- Note: NetBeans does not appear to support context menu items
+- on shell scripts :-(
+--->
+-
+-<action name="run.single">
+- <target>jtreg</target>
+- <context>
+- <property>jtreg.tests</property>
+- <folder>${root}/test</folder>
+- <pattern>\.(java|sh)$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <separated-files>,</separated-files>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="test">
+- <target>jtreg</target>
+-</action>
+-
+-<action name="debug">
+- <target>debug-nb</target>
+-</action>
+-
+-<action name="debug.single">
+- <target>debug-single-nb</target>
+- <context>
+- <property>debug.classname</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>java-name</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<!--
+- Note: NetBeans does not appear to support context menu items
+- on shell scripts :-(
+--->
+-
+-<action name="debug.single">
+- <target>debug-jtreg-nb</target>
+- <context>
+- <property>jtreg.tests</property>
+- <folder>${root}/test</folder>
+- <pattern>\.(java|sh)$</pattern>
+- <format>relative-path</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="debug.fix">
+- <target>debug-fix</target>
+- <property name="srcdir">${root}/src/share/classes</property>
+- <context>
+- <property>class</property>
+- <folder>${root}/src/share/classes</folder>
+- <pattern>\.java$</pattern>
+- <format>relative-path-noext</format>
+- <arity>
+- <one-file-only/>
+- </arity>
+- </context>
+-</action>
+-
+-<action name="javadoc">
+- <target>-javadoc-nb</target>
+-</action>
+diff --git a/make/netbeans/compiler/README b/make/netbeans/compiler/README
+deleted file mode 100644
+--- a/make/netbeans/compiler/README
++++ /dev/null
+@@ -1,11 +0,0 @@
+-"compiler" project README.
+-
+-This project is for working on the compiler tool (javac)
+-in the OpenJDK langtools component.
+-
+-The main class for the tool is com.sun.tools.javac.Main.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/compiler/build.xml b/make/netbeans/compiler/build.xml
+deleted file mode 100644
+--- a/make/netbeans/compiler/build.xml
++++ /dev/null
+@@ -1,63 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the compiler.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+--->
+-
+-<project name="compiler" default="build" basedir="../../..">
+- <property name="tool.name" value="javac"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-javac" description="Build the compiler."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the compiler."/>
+-
+- <target name="-javadoc" depends="javadoc-javac"/>
+- <target name="javadoc" depends="-javadoc-nb" description="Generate javadoc documentation for the compiler."/>
+-
+- <target name="-jtreg" depends="jtreg-javac"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the compiler."/>
+-
+-</project>
+diff --git a/make/netbeans/compiler/nbproject/project.xml b/make/netbeans/compiler/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/compiler/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions SYSTEM "../../common/standard-ide-actions.ent">
+- <!ENTITY standard-context-menu-items SYSTEM "../../common/standard-context-menu-items.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>compiler</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/doclets/README b/make/netbeans/doclets/README
+deleted file mode 100644
+--- a/make/netbeans/doclets/README
++++ /dev/null
+@@ -1,16 +0,0 @@
+-"doclets" project README.
+-
+-This project is for working on the standard doclets used by
+-the documentation tool (javadoc) in the OpenJDK langtools component.
+-
+-The doclets are invoked as part of the documentation tool (javadoc).
+-Using this project, you can also browse javadoc and any tools in langtools.
+-If you build the doclets, javadoc will be built automatically as well,
+-if necessary.
+-
+-The doclets are found in com.sun.tools.doclets.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/doclets/build.xml b/make/netbeans/doclets/build.xml
+deleted file mode 100644
+--- a/make/netbeans/doclets/build.xml
++++ /dev/null
+@@ -1,60 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the standard doclets used by documentation tool, javadoc.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+--->
+-
+-<project name="doclets" default="build" basedir="../../..">
+- <property name="tool.name" value="doclets"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-doclets" description="Build the standard doclets for the documentation tool, javadoc."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the standard doclets for the documentation tool, javadoc."/>
+-
+- <target name="-jtreg" depends="jtreg-doclets"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the standard doclets used by the documentation tool, javadoc."/>
+-
+-</project>
+diff --git a/make/netbeans/doclets/nbproject/project.xml b/make/netbeans/doclets/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/doclets/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions-no-javadoc SYSTEM "../../common/standard-ide-actions-no-javadoc.ent">
+- <!ENTITY standard-context-menu-items-no-javadoc SYSTEM "../../common/standard-context-menu-items-no-javadoc.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>doclets</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions-no-javadoc;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items-no-javadoc;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/javadoc/README b/make/netbeans/javadoc/README
+deleted file mode 100644
+--- a/make/netbeans/javadoc/README
++++ /dev/null
+@@ -1,16 +0,0 @@
+-"javadoc" project README.
+-
+-This project is for working on the documentation tool (javadoc)
+-in the OpenJDK langtools component.
+-
+-javadoc is built on top of the compiler (javac). Using this
+-project, you can also browse javac and any tools in langtools.
+-If you build javadoc, javac will be built automatically as well,
+-if necessary.
+-
+-The main class for the tool is com.sun.tools.javadoc.Main.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/javadoc/build.xml b/make/netbeans/javadoc/build.xml
+deleted file mode 100644
+--- a/make/netbeans/javadoc/build.xml
++++ /dev/null
+@@ -1,63 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the documentation tool, javadoc.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+--->
+-
+-<project name="javadoc" default="build" basedir="../../..">
+- <property name="tool.name" value="javadoc"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-javadoc" description="Build the documentation tool, javadoc."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the documentation tool, javadoc."/>
+-
+- <target name="-javadoc" depends="javadoc-javadoc"/>
+- <target name="javadoc" depends="-javadoc-nb" description="Generate javadoc documentation for the Doclet API."/>
+-
+- <target name="-jtreg" depends="jtreg-javadoc"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the documentation tool, javadoc."/>
+-
+-</project>
+diff --git a/make/netbeans/javadoc/nbproject/project.xml b/make/netbeans/javadoc/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/javadoc/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions SYSTEM "../../common/standard-ide-actions.ent">
+- <!ENTITY standard-context-menu-items SYSTEM "../../common/standard-context-menu-items.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>javadoc</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/javah/README b/make/netbeans/javah/README
+deleted file mode 100644
+--- a/make/netbeans/javah/README
++++ /dev/null
+@@ -1,21 +0,0 @@
+-"javah" project README.
+-
+-This project is for working on the native header tool (javah)
+-in the OpenJDK langtools component.
+-
+-javah is built on top of the documentation tool (javadoc). Using this
+-project, you can also browse javadoc and any other tools in langtools.
+-If you build javah, javadoc will be built automatically as well,
+-if necessary.
+-
+-javah is in the process of being converted so that it runs directly on
+-top of the compiler, javac, using the annotation processing API,
+-instead of on top of the documentation tool, javadoc, using the
+-Doclet API.
+-
+-The main class for the tool is com.sun.tools.javah.Main.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/javah/build.xml b/make/netbeans/javah/build.xml
+deleted file mode 100644
+--- a/make/netbeans/javah/build.xml
++++ /dev/null
+@@ -1,60 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the native header tool, javah.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+--->
+-
+-<project name="javah" default="build" basedir="../../..">
+- <property name="tool.name" value="javah"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-javah" description="Build the native header tool, javah."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the native header tool, javah."/>
+-
+- <target name="-jtreg" depends="jtreg-javah"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the native header tool, javah."/>
+-
+-</project>
+diff --git a/make/netbeans/javah/nbproject/project.xml b/make/netbeans/javah/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/javah/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions-no-javadoc SYSTEM "../../common/standard-ide-actions-no-javadoc.ent">
+- <!ENTITY standard-context-menu-items-no-javadoc SYSTEM "../../common/standard-context-menu-items-no-javadoc.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>javah</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions-no-javadoc;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items-no-javadoc;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/javap/README b/make/netbeans/javap/README
+deleted file mode 100644
+--- a/make/netbeans/javap/README
++++ /dev/null
+@@ -1,11 +0,0 @@
+-"javap" project README.
+-
+-This project is for working on the disassembler tool (javap)
+-in the OpenJDK langtools component.
+-
+-The main class for the tool is sun.tools.javap.Main.
+-
+-NetBeans 5.0 or later is required and sufficient to use this
+-project, and others in the OpenJDK langtools component.
+-This is different from other projects in OpenJDK, which
+-require version 6.0 or later.
+diff --git a/make/netbeans/javap/build.xml b/make/netbeans/javap/build.xml
+deleted file mode 100644
+--- a/make/netbeans/javap/build.xml
++++ /dev/null
+@@ -1,60 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!--
+- Build file for the disassembler tool, javap.
+- - The basic functionality of the build is imported from make/build.xml.
+- - Additional support for NetBeans actions is imported from
+- make/netbeans/common/shared.xml.
+- - This file gives the final customizations.
+--->
+-
+-<project name="javap" default="build" basedir="../../..">
+- <property name="tool.name" value="javap"/>
+-
+- <import file="../common/shared.xml"/>
+-
+- <!--
+- Alias the following imported targets, giving descriptions as appropriate.
+- NetBeans will emphasize targets with descriptions in the Ant Targets list,
+- and will display the targets in the context menu (under Run Target) for
+- this file in the Projects viewer.
+- -->
+-
+- <target name="build" depends="build-javap" description="Build the disassembler tool, javap."/>
+-
+- <target name="debug" depends="-debug-nb" description="Debug the disassembler tool, javap."/>
+-
+- <target name="-jtreg" depends="jtreg-javap"/>
+- <target name="jtreg" depends="-jtreg-nb" description="Run the jtreg tests for the disassembler tool, javap."/>
+-
+-</project>
+diff --git a/make/netbeans/javap/nbproject/project.xml b/make/netbeans/javap/nbproject/project.xml
+deleted file mode 100644
+--- a/make/netbeans/javap/nbproject/project.xml
++++ /dev/null
+@@ -1,108 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+- Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
+-
+- Redistribution and use in source and binary forms, with or without
+- modification, are permitted provided that the following conditions
+- are met:
+-
+- - Redistributions of source code must retain the above copyright
+- notice, this list of conditions and the following disclaimer.
+-
+- - Redistributions in binary form must reproduce the above copyright
+- notice, this list of conditions and the following disclaimer in the
+- documentation and/or other materials provided with the distribution.
+-
+- - Neither the name of Sun Microsystems nor the names of its
+- contributors may be used to endorse or promote products derived
+- from this software without specific prior written permission.
+-
+- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+--->
+-
+-<!DOCTYPE project [
+- <!ENTITY standard-ide-actions-no-javadoc SYSTEM "../../common/standard-ide-actions-no-javadoc.ent">
+- <!ENTITY standard-context-menu-items-no-javadoc SYSTEM "../../common/standard-context-menu-items-no-javadoc.ent">
+-]>
+-<project xmlns="http://www.netbeans.org/ns/project/1">
+- <type>org.netbeans.modules.ant.freeform</type>
+- <configuration>
+- <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
+- <!-- Do not use Project Properties customizer when editing this file manually. -->
+- <name>javap</name>
+- <properties>
+- <property name="root">../../..</property>
+- </properties>
+- <folders>
+- <source-folder>
+- <label>langtools</label>
+- <location>${root}</location>
+- </source-folder>
+- <source-folder>
+- <label>Source files</label>
+- <type>java</type>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder>
+- <label>Test files</label>
+- <type>tests</type>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder>
+- <label>Build files</label>
+- <type>build</type>
+- <location>${root}/make</location>
+- </source-folder>
+- </folders>
+- <ide-actions>
+- &standard-ide-actions-no-javadoc;
+- </ide-actions>
+- <export>
+- <type>folder</type>
+- <location>${root}/build/classes</location>
+- <build-target>build</build-target>
+- </export>
+- <view>
+- <items>
+- <source-folder style="tree">
+- <label>Source files</label>
+- <location>${root}/src/share/classes</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Test files</label>
+- <location>${root}/test</location>
+- </source-folder>
+- <source-folder style="tree">
+- <label>Build files</label>
+- <location>${root}/make</location>
+- </source-folder>
+- <source-file>
+- <label>README</label>
+- <location>README</location>
+- </source-file>
+- </items>
+- <context-menu>
+- &standard-context-menu-items-no-javadoc;
+- </context-menu>
+- </view>
+- <subprojects/>
+- </general-data>
+- <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
+- <compilation-unit>
+- <package-root>${root}/src/share/classes</package-root>
+- <built-to>${root}/build/classes</built-to>
+- <source-level>1.5</source-level> <!-- FIXME -->
+- </compilation-unit>
+- </java-data>
+- </configuration>
+-</project>
+diff --git a/make/netbeans/langtools/build.xml b/make/netbeans/langtools/build.xml
+new file mode 100644
+--- /dev/null
++++ b/make/netbeans/langtools/build.xml
+@@ -0,0 +1,279 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!--
++ Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ - Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++
++ - Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++
++ - Neither the name of Sun Microsystems nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
++ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
++ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++-->
++
++<project name="langtools-netbeans" default="build" basedir="../../..">
++
++ <property name="langtools.properties"
++ location="make/netbeans/langtools/nbproject/private/langtools.properties"/>
++
++ <!--
++ Instead of importing the main build file, we could call it when needed.
++ That would reduce the list of Ant targets that get displayed for this
++ file, but it also complicates the interface between the project build
++ file and the main build file. For example, some imported targets
++ would have to be reclared, properties would have to be restructured,
++ and it would be harder to run results (e.g. in properties) from nested
++ targets.
++ -->
++ <import file="../../build.xml"/>
++
++ <!-- Build project. (action: build; F11)
++ If langtools.tool.name is set, then just build that tool; otherwise
++ build all tools.
++ -->
++
++ <target name="build" depends="-get-tool-if-set,-build-tool,-build-all"
++ description="Build one or all langtools tools"
++ />
++
++ <target name="-build-tool" if="langtools.tool.name">
++ <echo level="info" message="Building ${langtools.tool.name}"/>
++ <echo level="verbose" message="(Unset langtools.tool.name to build all tools)"/>
++ <antcall target="build-${langtools.tool.name}"/>
++ </target>
++
++ <target name="-build-all" unless="langtools.tool.name">
++ <echo level="info" message="Building all tools"/>
++ <echo level="verbose" message="(Set langtools.tool.name to build a single tool)"/>
++ <antcall target="build-all-tools"/>
++ </target>
++
++ <!-- Compile a single file. (action: compile.single; F9) -->
++
++ <target name="compile-single" depends="build-bootstrap-javac">
++ <fail unless="includes">Must set property 'includes'</fail>
++ <javac fork="true" executable="${build.bootstrap.dir}/bin/javac"
++ srcdir="${src.classes.dir}"
++ destdir="${build.classes.dir}"
++ includes="${includes}"
++ sourcepath=""
++ includeAntRuntime="no"
++ target="${javac.target}"
++ debug="${javac.debug}"
++ debuglevel="${javac.debuglevel}"/>
++ </target>
++
++ <!-- Run tool. (action: run; F6)
++ Use langtools.tool.name and langtools.tool.args properties if set; otherwise prompt
++ the user.
++ -->
++
++ <target name="run" depends="-check-target.java.home,build,-def-run,-get-tool-and-args"
++ description="run tool">
++ <echo level="info" message="Run ${langtools.tool.name} with args ${langtools.tool.args}"/>
++ <run mainclass="com.sun.tools.${langtools.tool.name}.Main" args="${langtools.tool.args}"/>
++ </target>
++
++ <!-- Run a selected class. (action: run.single; shift-F6) -->
++
++ <target name="run-single" depends="-check-target.java.home,-def-run">
++ <fail unless="run.classname">Must set property 'run.classname' </fail>
++ <echo level="info" message="run ${run.classname}"/>
++ <run mainclass="${run.classname}" args=""/>
++ </target>
++
++ <!-- Test project, and display results if tests failed. (action: test; Alt-F6)
++ If langtools.tool.name is set, then just test that tool; otherwise
++ test all tools.
++ -->
++
++ <target name="jtreg" depends="-get-tool-if-set,-jtreg-tool,-jtreg-all"
++ description="Test one or all langtools tools"
++ />
++
++ <target name="-jtreg-tool" if="langtools.tool.name">
++ <echo level="info" message="Testing ${langtools.tool.name}"/>
++ <echo level="verbose" message="(Unset langtools.tool.name to test all tools)"/>
++ <antcall>
++ <target name="jtreg-${langtools.tool.name}"/>
++ <target name="-show-jtreg"/>
++ </antcall>
++ </target>
++
++ <target name="-jtreg-all" unless="langtools.tool.name">
++ <echo level="info" message="Testing all tools"/>
++ <echo level="verbose" message="(Set langtools.tool.name to test a single tool)"/>
++ <antcall>
++ <target name="langtools.jtreg"/>
++ <target name="-show-jtreg"/>
++ </antcall>
++ </target>
++
++ <target name="-show-jtreg" if="netbeans.home" unless="jtreg.passed">
++ <nbbrowse file="${jtreg.report}/report.html"/>
++ <fail>Some tests failed; see report for details.</fail>
++ </target>
++
++ <!-- Debug tool in NetBeans. -->
++
++ <target name="debug" depends="-check-target.java.home,-def-run,-def-start-debugger,-get-tool-and-args,build" if="netbeans.home">
++ <echo level="info" message="Debug ${langtools.tool.name} with args ${langtools.tool.args}"/>
++ <start-debugger/>
++ <run mainclass="com.sun.tools.${langtools.tool.name}.Main" args="${langtools.tool.args}" jpda.jvmargs="${jpda.jvmargs}"/>
++ </target>
++
++ <!-- Debug a selected class . -->
++ <target name="debug-single" depends="-check-target.java.home,-def-start-debugger,-def-run">
++ <fail unless="debug.classname">Must set property 'debug.classname'</fail>
++ <start-debugger/>
++ <run mainclass="${debug.classname}" default.args="" jpda.jvmargs="${jpda.jvmargs}"/>
++ </target>
++
++ <!-- Debug a jtreg test. -->
++ <target name="debug-jtreg" depends="-check-target.java.home,-def-start-debugger,-def-jtreg">
++ <fail unless="jtreg.tests">Must set property 'jtreg.tests'</fail>
++ <start-debugger/>
++ <jtreg-tool name="debug" samevm="false" tests="${jtreg.tests}" jpda.jvmargs="${jpda.jvmargs}"/>
++ </target>
++
++ <!-- Update a class being debugged. -->
++
++ <target name="debug-fix" if="langtools.tool.name">
++ <fail unless="class">Must set property 'class'
++ </fail>
++ <antcall target="compile-single">
++ <param name="includes" value="${class}.java"/>
++ </antcall>
++ <nbjpdareload>
++ <fileset dir="${build.classes.dir}">
++ <include name="${class}.class"/>
++ </fileset>
++ </nbjpdareload>
++ </target>
++
++ <!-- Generate javadoc for one or all tools. (action: javadoc; Alt-F6)
++ If langtools.tool.name is set, then just test that tool; otherwise
++ test all tools.
++ -->
++
++ <target name="javadoc" depends="-javadoc-tool,-javadoc-all"
++ description="Generate javadoc for one or all langtools tools"
++ />
++
++ <target name="-javadoc-tool" if="langtools.tool.name">
++ <echo level="info" message="Generate javadoc for ${langtools.tool.name}"/>
++ <echo level="verbose" message="(Unset langtools.tool.name to generate javadoc for all tools)"/>
++ <antcall>
++ <target name="javadoc-${langtools.tool.name}"/>
++ <target name="-show-javadoc"/>
++ </antcall>
++ </target>
++
++ <target name="-javadoc-all" unless="langtools.tool.name">
++ <echo level="info" message="Generate javadoc for all tools"/>
++ <echo level="verbose" message="(Set langtools.tool.name to generate javadoc for a single tool)"/>
++ <antcall>
++ <target name="langtools.javadoc"/>
++ <target name="-show-javadoc"/>
++ </antcall>
++ </target>
++
++ <target name="-show-javadoc" if="netbeans.home">
++ <!-- what if doing javadoc for all? -->
++ <nbbrowse file="${build.javadoc.dir}/${langtools.tool.name}/index.html"/>
++ </target>
++
++ <!-- Prompt for values. -->
++
++ <target name="-get-tool-if-set" depends="-def-select-tool">
++ <select-tool
++ toolproperty="langtools.tool.name"
++ propertyfile="${langtools.properties}"
++ askIfUnset="false"
++ />
++ </target>
++
++ <target name="-get-tool-and-args" depends="-def-select-tool">
++ <select-tool
++ toolproperty="langtools.tool.name"
++ argsproperty="langtools.tool.args"
++ propertyfile="${langtools.properties}"
++ askIfUnset="true"
++ />
++ </target>
++
++ <!-- Macro to run a tool or selected class - used by run* and debug* tasks -->
++ <target name="-def-run">
++ <macrodef name="run">
++ <attribute name="mainclass"/>
++ <attribute name="args" default=""/>
++ <attribute name="jpda.jvmargs" default=""/>
++ <sequential>
++ <java fork="true" jvm="${target.java}" classname="@{mainclass}">
++ <jvmarg line="-Xbootclasspath/p:${build.classes.dir}"/>
++ <jvmarg line="@{jpda.jvmargs}"/>
++ <arg line="@{args}"/>
++ </java>
++ </sequential>
++ </macrodef>
++ </target>
++
++ <!-- Macro to start the debugger and set a property containg the args needed by the run task -->
++ <target name="-def-start-debugger" if="netbeans.home">
++ <macrodef name="start-debugger">
++ <attribute name="jpda.jvmargs.property" default="jpda.jvmargs"/>
++ <sequential>
++ <nbjpdastart name="${ant.project.name}" addressproperty="jpda.address" transport="dt_socket">
++ <bootclasspath>
++ <pathelement location="${build.classes.dir}"/>
++ <pathelement location="${target.java.home}/jre/lib/rt.jar"/>
++ </bootclasspath>
++ <sourcepath>
++ <pathelement location="${src.classes.dir}"/>
++ </sourcepath>
++ </nbjpdastart>
++ <property
++ name="@{jpda.jvmargs.property}"
++ value="-Xdebug -Xnoagent -Djava.compiler=none -Xrunjdwp:transport=dt_socket,address=${jpda.address}"
++ />
++ </sequential>
++ </macrodef>
++ </target>
++
++ <target name="-def-select-tool">
++ <mkdir dir="${build.toolclasses.dir}"/>
++ <javac srcdir="${make.tools.dir}/SelectTool"
++ destdir="${build.toolclasses.dir}/"
++ classpath="${ant.home}/lib/ant.jar"
++ debug="${javac.debug}"
++ debuglevel="${javac.debuglevel}">
++ <compilerarg line="-Xlint"/>
++ </javac>
++ <taskdef name="select-tool"
++ classname="SelectToolTask"
++ classpath="${build.toolclasses.dir}/"/>
++ </target>
++
++ <target name="select-tool" depends="-def-select-tool">
++ <select-tool propertyfile="${langtools.properties}"/>
++ </target>
++</project>
+diff --git a/make/netbeans/langtools/nbproject/project.xml b/make/netbeans/langtools/nbproject/project.xml
+new file mode 100644
+--- /dev/null
++++ b/make/netbeans/langtools/nbproject/project.xml
+@@ -0,0 +1,108 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!--
++ Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ - Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++
++ - Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++
++ - Neither the name of Sun Microsystems nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
++ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
++ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++-->
++
++<!DOCTYPE project [
++ <!ENTITY standard-ide-actions SYSTEM "standard-ide-actions.ent">
++ <!ENTITY standard-context-menu-items SYSTEM "standard-context-menu-items.ent">
++]>
++<project xmlns="http://www.netbeans.org/ns/project/1">
++ <type>org.netbeans.modules.ant.freeform</type>
++ <configuration>
++ <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
++ <!-- Do not use Project Properties customizer when editing this file manually. -->
++ <name>langtools</name>
++ <properties>
++ <property name="root">../../..</property>
++ </properties>
++ <folders>
++ <source-folder>
++ <label>langtools</label>
++ <location>${root}</location>
++ </source-folder>
++ <source-folder>
++ <label>Source files</label>
++ <type>java</type>
++ <location>${root}/src/share/classes</location>
++ </source-folder>
++ <source-folder>
++ <label>Test files</label>
++ <type>tests</type>
++ <location>${root}/test</location>
++ </source-folder>
++ <source-folder>
++ <label>Build files</label>
++ <type>build</type>
++ <location>${root}/make</location>
++ </source-folder>
++ </folders>
++ <ide-actions>
++ &standard-ide-actions;
++ </ide-actions>
++ <export>
++ <type>folder</type>
++ <location>${root}/build/classes</location>
++ <build-target>build</build-target>
++ </export>
++ <view>
++ <items>
++ <source-folder style="tree">
++ <label>Source files</label>
++ <location>${root}/src/share/classes</location>
++ </source-folder>
++ <source-folder style="tree">
++ <label>Test files</label>
++ <location>${root}/test</location>
++ </source-folder>
++ <source-folder style="tree">
++ <label>Build files</label>
++ <location>${root}/make</location>
++ </source-folder>
++ <source-file>
++ <label>README</label>
++ <location>README</location>
++ </source-file>
++ </items>
++ <context-menu>
++ &standard-context-menu-items;
++ </context-menu>
++ </view>
++ <subprojects/>
++ </general-data>
++ <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2">
++ <compilation-unit>
++ <package-root>${root}/src/share/classes</package-root>
++ <built-to>${root}/build/classes</built-to>
++ <source-level>1.5</source-level> <!-- FIXME -->
++ </compilation-unit>
++ </java-data>
++ </configuration>
++</project>
+diff --git a/make/netbeans/langtools/nbproject/standard-context-menu-items.ent b/make/netbeans/langtools/nbproject/standard-context-menu-items.ent
+new file mode 100644
+--- /dev/null
++++ b/make/netbeans/langtools/nbproject/standard-context-menu-items.ent
+@@ -0,0 +1,61 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!--
++ Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ - Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++
++ - Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++
++ - Neither the name of Sun Microsystems nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
++ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
++ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++-->
++
++<!--
++ This file defines the actions that will appear on the project's context
++ menu, in the Projects viewer.
++ It is normally included as an entity into a project's project.xml file.
++
++ For information on these actions, see
++ - NetBeans: Setting Up Projects
++ at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
++ - NetBeans: Advanced Freeform Project Configuration
++ at http://www.netbeans.org/kb/41/freeform-config.html
++-->
++
++<ide-action name="select-tool"/>
++
++<separator/>
++
++<ide-action name="build"/>
++<ide-action name="rebuild"/>
++<ide-action name="clean"/>
++<ide-action name="javadoc"/>
++
++<separator/>
++
++<ide-action name="run"/>
++<ide-action name="debug"/>
++
++<separator/>
++
++<ide-action name="test"/>
+diff --git a/make/netbeans/langtools/nbproject/standard-ide-actions.ent b/make/netbeans/langtools/nbproject/standard-ide-actions.ent
+new file mode 100644
+--- /dev/null
++++ b/make/netbeans/langtools/nbproject/standard-ide-actions.ent
+@@ -0,0 +1,173 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!--
++ Copyright 2007-2008 Sun Microsystems, Inc. All Rights Reserved.
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ - Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++
++ - Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++
++ - Neither the name of Sun Microsystems nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
++ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
++ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++-->
++
++<!--
++ This file defines the standard actions accepted by langtools projects.
++ It is normally included as an entity into a project's project.xml file.
++
++ For information on these actions, see
++ - NetBeans: Setting Up Projects
++ at http://www.netbeans.org/kb/55/using-netbeans/project_setup.html
++ - NetBeans: Advanced Freeform Project Configuration
++ at http://www.netbeans.org/kb/41/freeform-config.html
++-->
++
++<action name="build">
++ <target>build</target>
++</action>
++
++<action name="clean">
++ <target>clean</target>
++</action>
++
++<action name="rebuild">
++ <target>clean</target>
++ <target>build</target>
++</action>
++
++<action name="compile.single">
++ <target>compile-single</target>
++ <property name="srcdir">${root}/src/share/classes</property>
++ <context>
++ <property>includes</property>
++ <folder>${root}/src/share/classes</folder>
++ <pattern>\.java$</pattern>
++ <format>relative-path</format>
++ <arity>
++ <separated-files>,</separated-files>
++ </arity>
++ </context>
++</action>
++
++<action name="run">
++ <target>run</target>
++</action>
++
++<action name="run.single">
++ <target>run-single</target>
++ <context>
++ <property>run.classname</property>
++ <folder>${root}/src/share/classes</folder>
++ <pattern>\.java$</pattern>
++ <format>java-name</format>
++ <arity>
++ <one-file-only/>
++ </arity>
++ </context>
++</action>
++
++<!--
++ Note: NetBeans does not appear to support context menu items
++ on shell scripts :-(
++-->
++
++<action name="run.single">
++ <target>jtreg</target>
++ <context>
++ <property>jtreg.tests</property>
++ <folder>${root}/test</folder>
++ <pattern>\.(java|sh)$</pattern>
++ <format>relative-path</format>
++ <arity>
++ <separated-files>,</separated-files>
++ </arity>
++ </context>
++</action>
++
++<action name="test">
++ <target>jtreg</target>
++</action>
++
++<action name="debug">
++ <target>debug</target>
++</action>
++
++<action name="debug.single">
++ <target>debug-single</target>
++ <context>
++ <property>debug.classname</property>
++ <folder>${root}/src/share/classes</folder>
++ <pattern>\.java$</pattern>
++ <format>java-name</format>
++ <arity>
++ <one-file-only/>
++ </arity>
++ </context>
++</action>
++
++<!--
++ Note: NetBeans does not appear to support context menu items
++ on shell scripts :-(
++-->
++
++<action name="debug.single">
++ <target>debug-jtreg</target>
++ <context>
++ <property>jtreg.tests</property>
++ <folder>${root}/test</folder>
++ <pattern>\.(java|sh)$</pattern>
++ <format>relative-path</format>
++ <arity>
++ <one-file-only/>
++ </arity>
++ </context>
++</action>
++
++<action name="debug.fix">
++ <target>debug-fix</target>
++ <property name="srcdir">${root}/src/share/classes</property>
++ <context>
++ <property>class</property>
++ <folder>${root}/src/share/classes</folder>
++ <pattern>\.java$</pattern>
++ <format>relative-path-noext</format>
++ <arity>
++ <one-file-only/>
++ </arity>
++ </context>
++</action>
++
++<action name="javadoc">
++ <target>javadoc</target>
++</action>
++
++<action name="select-tool">
++ <target>select-tool</target>
++</action>
++
++<action name="test-select-tool-1">
++ <target>test-select-tool-1</target>
++</action>
++
++<action name="test-select-tool-2">
++ <target>test-select-tool-2</target>
++</action>
+diff --git a/make/tools/SelectTool/SelectToolTask.java b/make/tools/SelectTool/SelectToolTask.java
+new file mode 100644
+--- /dev/null
++++ b/make/tools/SelectTool/SelectToolTask.java
+@@ -0,0 +1,281 @@
++/*
++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ *
++ * This code is free software; you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 2 only, as
++ * published by the Free Software Foundation. Sun designates this
++ * particular file as subject to the "Classpath" exception as provided
++ * by Sun in the LICENSE file that accompanied this code.
++ *
++ * This code is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
++ * version 2 for more details (a copy is included in the LICENSE file that
++ * accompanied this code).
++ *
++ * You should have received a copy of the GNU General Public License version
++ * 2 along with this work; if not, write to the Free Software Foundation,
++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
++ *
++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
++ * CA 95054 USA or visit www.sun.com if you need additional information or
++ * have any questions.
++ */
++
++import java.awt.GridBagConstraints;
++import java.awt.GridBagLayout;
++import java.awt.event.ActionEvent;
++import java.awt.event.ActionListener;
++import java.awt.event.FocusEvent;
++import java.awt.event.FocusListener;
++import java.awt.event.ItemEvent;
++import java.awt.event.ItemListener;
++import java.io.BufferedReader;
++import java.io.BufferedWriter;
++import java.io.File;
++import java.io.FileReader;
++import java.io.FileWriter;
++import java.io.IOException;
++import java.io.Reader;
++import java.io.Writer;
++import java.util.ArrayList;
++import java.util.Arrays;
++import java.util.List;
++import java.util.Properties;
++import javax.swing.JButton;
++import javax.swing.JCheckBox;
++import javax.swing.JComboBox;
++import javax.swing.JDialog;
++import javax.swing.JLabel;
++import javax.swing.JOptionPane;
++import javax.swing.JPanel;
++import javax.swing.JTextField;
++
++import javax.swing.SwingUtilities;
++import org.apache.tools.ant.BuildException;
++import org.apache.tools.ant.Project;
++import org.apache.tools.ant.Task;
++
++/**
++ * Task to allow the user to control langtools tools built when using NetBeans.
++ *
++ * There are two primary modes.
++ * 1) Property mode. In this mode, property names are provided to get values
++ * that may be specified by the user, either directly in a GUI dialog, or
++ * read from a properties file. If the GUI dialog is invoked, values may
++ * optionally be set for future use.
++ * 2) Setup mode. In this mode, no property names are provided, and the GUI
++ * is invoked to allow the user to set or reset values for use in property mode.
++ */
++public class SelectToolTask extends Task {
++ /**
++ * Set the location of the private properties file used to keep the retain
++ * user preferences for this repository.
++ */
++ public void setPropertyFile(File propertyFile) {
++ this.propertyFile = propertyFile;
++ }
++
++ /**
++ * Set the name of the property which will be set to the name of the
++ * selected tool, if any. If no tool is selected, the property will
++ * remain unset.
++ */
++ public void setToolProperty(String toolProperty) {
++ this.toolProperty = toolProperty;
++ }
++
++ /**
++ * Set the name of the property which will be set to the execution args of the
++ * selected tool, if any. The args default to an empty string.
++ */
++ public void setArgsProperty(String argsProperty) {
++ this.argsProperty = argsProperty;
++ }
++
++ /**
++ * Specify whether or not to pop up a dialog if the user has not specified
++ * a default value for a property.
++ */
++ public void setAskIfUnset(boolean askIfUnset) {
++ this.askIfUnset = askIfUnset;
++ }
++
++ @Override
++ public void execute() {
++ Project p = getProject();
++
++ Properties props = readProperties(propertyFile);
++ toolName = props.getProperty("tool.name");
++ if (toolName != null) {
++ toolArgs = props.getProperty(toolName + ".args", "");
++ }
++
++ if (toolProperty == null ||
++ askIfUnset && (toolName == null
++ || (argsProperty != null && toolArgs == null))) {
++ showGUI(props);
++ }
++
++ // finally, return required values, if any
++ if (toolProperty != null && !(toolName == null || toolName.equals(""))) {
++ p.setProperty(toolProperty, toolName);
++
++ if (argsProperty != null && toolArgs != null)
++ p.setProperty(argsProperty, toolArgs);
++ }
++ }
++
++ void showGUI(Properties fileProps) {
++ Properties guiProps = new Properties(fileProps);
++ JOptionPane p = createPane(guiProps);
++ p.createDialog("Select Tool").setVisible(true);
++
++ toolName = (String) toolChoice.getSelectedItem();
++ toolArgs = argsField.getText();
++
++ if (defaultCheck.isSelected()) {
++ if (toolName.equals("")) {
++ fileProps.remove("tool.name");
++ } else {
++ fileProps.put("tool.name", toolName);
++ fileProps.put(toolName + ".args", toolArgs);
++ }
++ writeProperties(propertyFile, fileProps);
++ }
++ }
++
++ JOptionPane createPane(final Properties props) {
++ JPanel body = new JPanel(new GridBagLayout());
++ GridBagConstraints lc = new GridBagConstraints();
++ lc.insets.right = 10;
++ lc.insets.bottom = 3;
++ GridBagConstraints fc = new GridBagConstraints();
++ fc.anchor = GridBagConstraints.WEST;
++ fc.gridx = 1;
++ fc.gridwidth = GridBagConstraints.REMAINDER;
++ fc.insets.bottom = 3;
++
++ JLabel toolLabel = new JLabel("Tool:");
++ body.add(toolLabel, lc);
++ String[] toolChoices = { "apt", "javac", "javadoc", "javah", "javap" };
++ if (true || toolProperty == null) {
++ // include empty value in setup mode
++ List<String> l = new ArrayList<String>(Arrays.asList(toolChoices));
++ l.add(0, "");
++ toolChoices = l.toArray(new String[l.size()]);
++ }
++ toolChoice = new JComboBox(toolChoices);
++ if (toolName != null)
++ toolChoice.setSelectedItem(toolName);
++ toolChoice.addItemListener(new ItemListener() {
++ public void itemStateChanged(ItemEvent e) {
++ String tn = (String) e.getItem();
++ argsField.setText(getDefaultArgsForTool(props, tn));
++ if (toolProperty != null)
++ okButton.setEnabled(!tn.equals(""));
++ }
++ });
++ body.add(toolChoice, fc);
++
++ argsField = new JTextField(getDefaultArgsForTool(props, toolName), 40);
++ if (toolProperty == null || argsProperty != null) {
++ JLabel argsLabel = new JLabel("Args:");
++ body.add(argsLabel, lc);
++ body.add(argsField, fc);
++ argsField.addFocusListener(new FocusListener() {
++ public void focusGained(FocusEvent e) {
++ }
++ public void focusLost(FocusEvent e) {
++ String toolName = (String) toolChoice.getSelectedItem();
++ if (toolName.length() > 0)
++ props.put(toolName + ".args", argsField.getText());
++ }
++ });
++ }
++
++ defaultCheck = new JCheckBox("Set as default");
++ if (toolProperty == null)
++ defaultCheck.setSelected(true);
++ else
++ body.add(defaultCheck, fc);
++
++ final JOptionPane p = new JOptionPane(body);
++ okButton = new JButton("OK");
++ okButton.setEnabled(toolProperty == null || (toolName != null && !toolName.equals("")));
++ okButton.addActionListener(new ActionListener() {
++ public void actionPerformed(ActionEvent e) {
++ JDialog d = (JDialog) SwingUtilities.getAncestorOfClass(JDialog.class, p);
++ d.setVisible(false);
++ }
++ });
++ p.setOptions(new Object[] { okButton });
++
++ return p;
++ }
++
++ Properties readProperties(File file) {
++ Properties p = new Properties();
++ if (file != null && file.exists()) {
++ Reader in = null;
++ try {
++ in = new BufferedReader(new FileReader(file));
++ p.load(in);
++ in.close();
++ } catch (IOException e) {
++ throw new BuildException("error reading property file", e);
++ } finally {
++ if (in != null) {
++ try {
++ in.close();
++ } catch (IOException e) {
++ throw new BuildException("cannot close property file", e);
++ }
++ }
++ }
++ }
++ return p;
++ }
++
++ void writeProperties(File file, Properties p) {
++ if (file != null) {
++ Writer out = null;
++ try {
++ out = new BufferedWriter(new FileWriter(file));
++ p.store(out, "langtools properties");
++ out.close();
++ } catch (IOException e) {
++ throw new BuildException("error writing property file", e);
++ } finally {
++ if (out != null) {
++ try {
++ out.close();
++ } catch (IOException e) {
++ throw new BuildException("cannot close property file", e);
++ }
++ }
++ }
++ }
++ }
++
++ String getDefaultArgsForTool(Properties props, String tn) {
++ return (tn == null || tn.equals("")) ? "" : props.getProperty(tn + ".args", "");
++ }
++
++ // Ant task parameters
++ private boolean askIfUnset;
++ private String toolProperty;
++ private String argsProperty;
++ private File propertyFile;
++
++ // GUI components
++ private JComboBox toolChoice;
++ private JTextField argsField;
++ private JCheckBox defaultCheck;
++ private JButton okButton;
++
++ // Result values for the client
++ private String toolName;
++ private String toolArgs;
++}