--- a/jaxp/.hgignore Thu Sep 17 13:46:50 2009 -0700
+++ b/jaxp/.hgignore Mon Sep 21 13:54:55 2009 -0700
@@ -1,4 +1,5 @@
^build/
^dist/
+^drop/
^webrev/
^nbproject/private/
--- a/jaxp/README Thu Sep 17 13:46:50 2009 -0700
+++ b/jaxp/README Mon Sep 21 13:54:55 2009 -0700
@@ -1,14 +1,25 @@
README:
- This file should be located at the top of the jaxp Mercurial repository.
+
+ This file should be located at the top of the Mercurial repository.
See http://openjdk.java.net/ for more information about the OpenJDK.
See ../README-builds.html for complete details on build machine requirements.
Simple Build Instructions:
-
+ This repository can be loaded as a NetBeans project, built with ant, or
+ built with GNU make, e.g.
+ ant
+ -OR-
cd make && gnumake
- The files that will be imported into the jdk build will be in the "dist"
- directory.
+ The built files that will be imported into the jdk build will be in the
+ "dist" directory.
+ Help information is available by running "ant -projecthelp" or "make help".
+Drop Repository:
+ This repository builds sources from a created "drop" source directory.
+ These files will normally be copied from a shared directory area or
+ downloaded from a public website.
+ See the ant build script (build.xml) for more details.
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/build-defs.xml Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,117 @@
+<?xml version="1.0"?>
+<!--
+ Copyright 2009 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.
+-->
+
+<project name="jaxp_defs" default="all" basedir=".">
+
+ <!-- Specific build properties. -->
+ <property file="jaxp.properties"/>
+
+ <!-- Where generated xml files will stay. -->
+ <property name="xml.gen.dir" value="${build.dir}/xml_generated"/>
+ <property name="xml.template" value="build-drop-template.xml"/>
+
+ <!-- ############### -->
+ <!-- Begin Macrodefs -->
+
+ <!-- Copies template file, replaces @DROP@ pattern, and imports it. -->
+ <macrodef name="drop-import">
+ <attribute name="name"/>
+ <sequential>
+ <property name="xml.gen.@{name}" value="${xml.gen.dir}/build-drop-@{name}.xml"/>
+ <mkdir dir="${xml.gen.dir}"/>
+ <copy file="${xml.template}" tofile="${xml.gen.@{name}}"/>
+ <replace file="${xml.gen.@{name}}" token="@DROP@" value="@{name}"/>
+ <import file="${xml.gen.@{name}}"/>
+ </sequential>
+ </macrodef>
+
+ <!-- End of Macrodefs -->
+ <!-- ############### -->
+
+ <!-- Create xml file and import it for these drops. -->
+ <drop-import name="jaxp_src"/>
+ <!-- <drop-import name="jaxp_tests"/> -->
+
+
+ <!-- Special build area preparation. -->
+ <target name="-drop-build-prep" depends="init, -init-src-dirs">
+ </target>
+
+ <!-- Try to get drop sources, set property use.orig.src.dir if no drops. -->
+ <target name="-set-props"
+ depends="init,
+ jaxp_src-update">
+ <condition property="use.orig.src.dir">
+ <and>
+ <available file="${orig.src.dir}" type="dir"/>
+ <not>
+ <and>
+ <available file="${jaxp_src.src.dir}" type="dir"/>
+ </and>
+ </not>
+ </and>
+ </condition>
+ </target>
+
+ <!-- Set up source to use orig.src.dir, if use.orig.src.dir defined. -->
+ <target name="-use-orig" depends="-set-props" if="use.orig.src.dir">
+ <property name="primary.src.dir" value="${orig.src.dir}"/>
+ <path id="src.dir.id">
+ <pathelement path="${primary.src.dir}"/>
+ </path>
+ </target>
+
+ <!-- Set up source to use drop.dir, if use.orig.src.dir not defined. -->
+ <target name="-use-drop" depends="-set-props" unless="use.orig.src.dir">
+ <property name="primary.src.dir" value="${jaxp_src.src.dir}"/>
+ <path id="src.dir.id">
+ <pathelement path="${primary.src.dir}"/>
+ </path>
+ </target>
+
+ <!-- Source directory selection. -->
+ <target name="-init-src-dirs"
+ depends="init, -use-orig, -use-drop">
+ <echo message="Using primary.src.dir=${primary.src.dir}"/>
+ <pathconvert property="src.list.id" refid="src.dir.id"/>
+ <echo message="Using src.dir.id=${src.list.id}"/>
+ </target>
+
+ <!-- Create orig src.zip. -->
+ <target name="-orig-src-zip" depends="init, -set-props" if="use.orig.src.dir">
+ <zip file="${dist.src.zip}" basedir="${primary.src.dir}"/>
+ </target>
+
+ <!-- Create drop src.zip. -->
+ <target name="-drop-src-zip" depends="init, -set-props" unless="use.orig.src.dir">
+ <zip file="${dist.src.zip}" basedir="${primary.src.dir}"/>
+ </target>
+
+ <!-- Create src.zip. -->
+ <target name="-dist-src-zip" depends="init, -orig-src-zip, -drop-src-zip">
+ </target>
+
+</project>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/build-drop-template.xml Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,131 @@
+<?xml version="1.0"?>
+<!--
+ Copyright 2009 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.
+-->
+
+<project name="@DROP@-drop" default="all" basedir=".">
+
+ <!-- Locations of master drop bundles. -->
+ <property name="@DROP@.master.bundle.copy"
+ value="${@DROP@.master.bundle.dir}/${@DROP@.bundle.name}"/>
+ <property name="@DROP@.master.bundle.url"
+ value="${@DROP@.master.bundle.url.base}/${@DROP@.bundle.name}"/>
+
+ <!-- Location where the copied bundle lands. -->
+ <property name="@DROP@.bundle.copy"
+ value="${drop.dir}/bundles/${@DROP@.bundle.name}"/>
+
+ <!-- Root of exploded area. -->
+ <property name="@DROP@.root.dir" value="${drop.dir}/@DROP@"/>
+ <property name="@DROP@.src.dir" value="${@DROP@.root.dir}/src"/>
+
+ <!-- To see if the drop areas are ready. (ignoring bundles) -->
+ <target name="-@DROP@-ready">
+ <condition property="@DROP@.ready">
+ <and>
+ <available file="${@DROP@.root.dir}" type="dir"/>
+ <available file="${@DROP@.root.dir}/PATCHED" type="file"/>
+ </and>
+ </condition>
+ </target>
+
+ <!-- Copy over bundles from some shared master area. -->
+ <condition property="@DROP@.master.bundle.copy.exists">
+ <available file="${@DROP@.master.bundle.copy}" type="file"/>
+ </condition>
+ <target name="-@DROP@-copy-bundle"
+ depends="init, -@DROP@-ready"
+ if="@DROP@.master.bundle.copy.exists"
+ unless="@DROP@.ready">
+ <echo message="Copying from ${@DROP@.master.bundle.copy}"/>
+ <dirname property="@DROP@.bundle.dirname" file="${@DROP@.bundle.copy}"/>
+ <mkdir dir="${@DROP@.bundle.dirname}"/>
+ <delete file="${@DROP@.bundle.copy}.temp"/>
+ <delete file="${@DROP@.bundle.copy}"/>
+ <copy file="${@DROP@.master.bundle.copy}" tofile="${@DROP@.bundle.copy}.temp"/>
+ <move file="${@DROP@.bundle.copy}.temp" tofile="${@DROP@.bundle.copy}"/>
+ <property name="@DROP@.master.bundle.found" value="true"/>
+ </target>
+
+ <!-- Determine if the master url download should be used. -->
+ <target name="-@DROP@-url-should-be-used" unless="@DROP@.url.should.be.used">
+ <condition property="@DROP@.url.should.be.used">
+ <and>
+ <http url="${@DROP@.master.bundle.url.base}"/>
+ <not>
+ <isset property="@DROP@.master.bundle.copy.exists"/>
+ </not>
+ </and>
+ </condition>
+ </target>
+
+ <!-- Download bundles from a url. -->
+ <target name="-@DROP@-url-bundle"
+ depends="init, -@DROP@-ready, -@DROP@-url-should-be-used"
+ if="@DROP@.url.should.be.used"
+ unless="@DROP@.ready">
+ <echo message="Downloading from ${@DROP@.master.bundle.url}"/>
+ <dirname property="@DROP@.bundle.dirname" file="${@DROP@.bundle.copy}"/>
+ <mkdir dir="${@DROP@.bundle.dirname}"/>
+ <delete file="${@DROP@.bundle.copy}.temp"/>
+ <delete file="${@DROP@.bundle.copy}"/>
+ <get src="${@DROP@.master.bundle.url}" dest="${@DROP@.bundle.copy}.temp"/>
+ <move file="${@DROP@.bundle.copy}.temp" tofile="${@DROP@.bundle.copy}"/>
+ <property name="@DROP@.master.bundle.found" value="true"/>
+ </target>
+
+ <!-- Fill in the drop zones, but just when needed. -->
+ <target name="@DROP@-update"
+ depends="init,
+ -@DROP@-copy-bundle,
+ -@DROP@-url-bundle,
+ -@DROP@-ready"
+ if="@DROP@.master.bundle.found"
+ unless="@DROP@.ready">
+ <delete dir="${@DROP@.root.dir}"/>
+ <delete dir="${@DROP@.root.dir}-temp"/>
+ <mkdir dir="${@DROP@.root.dir}-temp"/>
+ <unzip src="${@DROP@.bundle.copy}" dest="${@DROP@.root.dir}-temp"/>
+ <move file="${@DROP@.root.dir}-temp" tofile="${@DROP@.root.dir}"/>
+ <touch>
+ <fileset dir="${@DROP@.root.dir}"/>
+ </touch>
+ <condition property="patch.utility" value="gpatch" else="patch">
+ <os name="SunOS"/>
+ </condition>
+ <apply executable="${patch.utility}"
+ dir="${@DROP@.root.dir}"
+ parallel="false"
+ failonerror="true"
+ verbose="true">
+ <arg value="-l"/>
+ <arg value="-p0"/>
+ <arg value="-i"/>
+ <filelist dir="${patches.dir}/@DROP@" files="${@DROP@.patch.list}"/>
+ </apply>
+ <echo file="${@DROP@.root.dir}/PATCHED"
+ message="Patches have been applied."/>
+ </target>
+
+</project>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/build.properties Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,103 @@
+#
+# Copyright 2007-2009 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.
+#
+
+# Base locations where bundles are located
+slashjava=/java
+devtools=${slashjava}/devtools
+
+# This is the JDK used to build and run the bootstrap version of javac.
+# The bootstrap javac is used to compile both boostrap versions of the
+# other tools, and product versions of all the tools.
+# Override this path as needed, either on the command line or in
+# one of the standard user build.properties files (see build.xml)
+javac.jar=${bootstrap.dir}/lib/javac.jar
+
+# options for the <javac> tasks used to compile the tools
+javac.source = 7
+javac.target = 7
+javac.debug = true
+javac.no.jdk.warnings = -XDignore.symbol.file=true
+# set the following to -version to verify the versions of javac being used
+javac.version.opt =
+# in time, there should be no exceptions to -Xlint:all
+#javac.lint.opts = -Xlint:all,-unchecked,-deprecation,-fallthrough,-cast,-serial
+javac.lint.opts=
+
+# JVM memory size
+javac.memoryInitialSize = 256m
+javac.memoryMaximumSize = 512m
+
+#------------------------------------------------------------
+
+# Root of output directories
+output.dir=.
+
+# Built files
+build.dir=${output.dir}/build
+build.classes.dir=${build.dir}/classes
+
+# Distributed results
+dist.dir=${output.dir}/dist
+dist.lib.dir=${dist.dir}/lib
+dist.classes.jar=${dist.lib.dir}/classes.jar
+dist.src.zip=${dist.lib.dir}/src.zip
+
+# Where all drop sources live
+drop.dir=${output.dir}/drop
+
+# Where patches to drop bundle sources live
+patches.dir=patches
+
+# Original source area
+orig.dir=src
+orig.src.dir=${orig.dir}/share/classes
+
+# Sanity information
+sanity.info= Sanity Settings:${line.separator}\
+ ant.home=${ant.home}${line.separator}\
+ ant.version=${ant.version}${line.separator}\
+ ant.java.version=${ant.java.version}${line.separator}\
+ java.home=${java.home}${line.separator}\
+ java.version=${java.version}${line.separator}\
+ os.name=${os.name}${line.separator}\
+ os.arch=${os.arch}${line.separator}\
+ os.version=${os.version}${line.separator}\
+ bootstrap.dir=${bootstrap.dir}${line.separator}\
+ javac.jar=${javac.jar}${line.separator}\
+ javac.memoryInitialSize=${javac.memoryInitialSize}${line.separator}\
+ javac.memoryMaximumSize=${javac.memoryMaximumSize}${line.separator}\
+ javac.source=${javac.source}${line.separator}\
+ javac.debug=${javac.debug}${line.separator}\
+ javac.target=${javac.target}${line.separator}\
+ javac.version.opt=${javac.version.opt}${line.separator}\
+ javac.lint.opts=${javac.lint.opts}${line.separator}\
+ javac.no.jdk.warnings=${javac.no.jdk.warnings}${line.separator}\
+ output.dir=${output.dir}${line.separator}\
+ build.dir=${build.dir}${line.separator}\
+ dist.dir=${dist.dir}${line.separator}\
+ drop.dir=${drop.dir}${line.separator}\
+${line.separator}
+
+#------------------------------------------------------------
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/build.xml Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,163 @@
+<?xml version="1.0"?>
+<!--
+ Copyright 2009 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.
+-->
+
+<project name="jaxp" default="all" basedir=".">
+
+ <!-- For 'ant -p' or 'ant -projecthelp' -->
+
+ <description>
+ Ant build script for the ${ant.project.name} part of the jdk.
+
+ Input Properties: (see build.properties for the ant defaults)
+ bootstrap.dir - dir with lib/javac.jar, added to javac bootclasspath
+ javac.debug - true or false for debug classfiles
+ javac.target - classfile version target
+ javac.source - source version
+ </description>
+
+ <!-- Mac is special, need to downgrade these before build.properties. -->
+ <condition property="javac.source" value="1.5">
+ <os family="mac"/>
+ </condition>
+ <condition property="javac.target" value="1.5">
+ <os family="mac"/>
+ </condition>
+
+ <!-- Project build properties. -->
+ <property file="build.properties"/>
+
+ <!-- Get shared targets. -->
+ <import file="build-defs.xml"/>
+
+ <!-- Initialization of directories needed for build. -->
+ <target name="init">
+ <mkdir dir="${build.dir}"/>
+ <mkdir dir="${build.classes.dir}"/>
+ <mkdir dir="${dist.dir}"/>
+ <mkdir dir="${dist.lib.dir}"/>
+ </target>
+
+ <!-- Sanity checks and settings -->
+ <target name="sanity"
+ depends="-javac-jar-exists"
+ description="Display settings of configuration values">
+ <echo message="${sanity.info}"/>
+ </target>
+
+ <!-- Check for bootstrap javac.jar file, warn if missing. -->
+ <condition property="javac.jar.exists">
+ <available file="${javac.jar}" type="file"/>
+ </condition>
+ <target name="-javac-jar-exists"
+ unless="javac.jar.exists">
+ <echo message="WARNING: Cannot find ${javac.jar}"/>
+ </target>
+
+ <!-- Creation of distribution files to jdk build process. -->
+ <target name="dist"
+ depends="init, -init-src-dirs, build, -dist-classes-jar, -dist-src-zip"
+ description="Create all built distribution files.">
+ </target>
+ <target name="-dist-classes-jar-uptodate"
+ depends="init, -init-src-dirs">
+ <condition property="dist.classes.jar.uptodate">
+ <and>
+ <available file="${dist.classes.jar}" type="file"/>
+ <uptodate targetfile="${dist.classes.jar}">
+ <srcfiles dir="${build.classes.dir}" includes="**"/>
+ </uptodate>
+ </and>
+ </condition>
+ </target>
+ <target name="-dist-classes-jar"
+ depends="init, -init-src-dirs, -dist-classes-jar-uptodate"
+ unless="dist.classes.jar.uptodate">
+ <delete file="${dist.classes.jar}"/>
+ <jar file="${dist.classes.jar}" basedir="${build.classes.dir}"/>
+ </target>
+
+ <target name="-build-prep"
+ depends="init, -init-src-dirs, -drop-build-prep">
+ </target>
+
+ <!-- Build (compilation) of sources to class files. -->
+ <target name="build"
+ depends="init, -init-src-dirs, -build-prep">
+ <javac fork="true"
+ destdir="${build.classes.dir}"
+ memoryInitialSize="${javac.memoryInitialSize}"
+ memoryMaximumSize="${javac.memoryMaximumSize}"
+ source="${javac.source}"
+ debug="${javac.debug}"
+ target="${javac.target}">
+ <compilerarg value="-J-Xbootclasspath/p:${javac.jar}"/>
+ <compilerarg line="${javac.version.opt} ${javac.lint.opts} ${javac.no.jdk.warnings}"/>
+ <src refid="src.dir.id"/>
+ </javac>
+ </target>
+
+ <!-- Test. (FIXME: Need to know how to run tests.) -->
+ <target name="test"
+ depends="init, -init-src-dirs, dist">
+ <echo message="FIXME: How do you run the tests"/>
+ </target>
+
+ <!-- Populate source area if needed. -->
+ <target name="source"
+ depends="init, -init-src-dirs"
+ description="Populate all source file directories">
+ </target>
+
+ <!-- Clean up compiled files. -->
+ <target name="clean"
+ description="Delete all generated files">
+ <delete dir="${build.dir}"/>
+ <delete dir="${dist.dir}"/>
+ </target>
+
+ <!-- Clean up compiled files and all imported source files. -->
+ <target name="clobber"
+ depends="clean"
+ description="Delete all generated files, including imported sources">
+ <delete dir="${drop.dir}"/>
+ </target>
+
+ <target name="-banner">
+ <echo message="+---------------------------------------+"/>
+ <echo message="+ Starting ant project ${ant.project.name} +"/>
+ <echo message="+---------------------------------------+"/>
+ </target>
+
+ <!-- Do everything but test. -->
+ <target name="all"
+ depends="-banner, sanity, dist"
+ description="Build everything.">
+ <echo message="+---------------------------------------+"/>
+ <echo message="+ Finishing ant project ${ant.project.name}"/>
+ <echo message="+---------------------------------------+"/>
+ </target>
+
+</project>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/jaxp.properties Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,36 @@
+#
+# Copyright 2007-2009 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.
+#
+
+drops.master.copy.base=${devtools}/share/jdk7-drops
+drops.master.url.base=http://kenai.com/projects/jdk7-drops/downloads/download
+
+jaxp_src.bundle.name=jdk7-jaxp-2009_08_28.zip
+jaxp_src.master.bundle.dir=${drops.master.copy.base}
+#jaxp_src.bundle.url.base=https://jaxp.dev.java.net/files/documents/913/142147
+jaxp_src.master.bundle.url.base=${drops.master.url.base}
+
+jaxp_tests.bundle.name=jdk7-jaxp-tests-2009_08_28.zip
+jaxp_tests.master.bundle.dir=${drops.master.copy.base}
+jaxp_tests.master.bundle.url.base=${drops.master.url.base}
--- a/jaxp/make/Makefile Thu Sep 17 13:46:50 2009 -0700
+++ b/jaxp/make/Makefile Mon Sep 21 13:54:55 2009 -0700
@@ -23,7 +23,7 @@
# have any questions.
#
-# Makefile for jaxp: wrapper around Ant build.xml file
+# Makefile wrapper around Ant build.xml file
#
# On Solaris, the 'make' utility from Sun will not work with these makefiles.
@@ -41,38 +41,12 @@
ANT_OPTIONS += -verbose
endif
-ifdef JDK_VERSION
- ANT_OPTIONS += -Djdk.version=$(JDK_VERSION)
-endif
-
-ifdef FULL_VERSION
- ANT_OPTIONS += -Dfull.version='$(FULL_VERSION)' # will contain spaces
-endif
-
-ifdef MILESTONE
- ANT_OPTIONS += -Dmilestone=$(MILESTONE)
-endif
-
-ifdef BUILD_NUMBER
- ANT_OPTIONS += -Dbuild.number=$(BUILD_NUMBER)
-else
- ifdef JDK_BUILD_NUMBER
- ANT_OPTIONS += -Dbuild.number=$(JDK_BUILD_NUMBER)
- endif
-endif
-
-ifeq ($(VARIANT), DBG)
- ANT_OPTIONS += -Djavac.debug=true
-else
- ifeq ($(VARIANT), OPT)
+ifeq ($(VARIANT), OPT)
+ ifneq ($(DEBUG_CLASSFILES), true)
ANT_OPTIONS += -Djavac.debug=false
endif
endif
-ifeq ($(DEBUG_CLASSFILES), true)
- ANT_OPTIONS += -Djavac.debug=true
-endif
-
# Note: jdk/make/common/Defs.gmk uses LANGUAGE_VERSION (-source NN)
# and the somewhat misnamed CLASS_VERSION (-target NN)
ifdef TARGET_CLASS_VERSION
@@ -81,7 +55,7 @@
ifdef JAVAC_TARGET_ARG
ANT_OPTIONS += -Djavac.target=$(JAVAC_TARGET_ARG)
endif
-endif
+endif
ifdef SOURCE_LANGUAGE_VERSION
ANT_OPTIONS += -Djavac.source=$(SOURCE_LANGUAGE_VERSION)
@@ -91,24 +65,53 @@
endif
endif
-ifdef ALT_BOOTDIR
- ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR)
+# Figure out the platform we are using
+_SYSTEM_UNAME := $(shell uname)
+_PLATFORM_KIND = unix
+ifeq ($(_SYSTEM_UNAME), Windows_NT)
+ _PLATFORM_KIND = windows
+endif
+ifneq (,$(findstring CYGWIN,$(_SYSTEM_UNAME)))
+ _PLATFORM_KIND = windows
endif
+# Where is /java in case we need it
+ifdef ALT_SLASH_JAVA
+ _SLASHJAVA = $(ALT_SLASH_JAVA)
+else
+ ifeq ($(_PLATFORM_KIND), windows)
+ _SLASHJAVA=J:/
+ else
+ _SLASHJAVA=/java
+ endif
+endif
+
+# Where is /java/devtools in case we need it
+ifdef ALT_JDK_DEVTOOLS_DIR
+ _DEVTOOLS = $(ALT_JDK_DEVTOOLS_DIR)
+else
+ _DEVTOOLS = $(_SLASHJAVA)/devtools
+endif
+
+# Add in path to devtools
+ANT_OPTIONS += -Ddevtools=$(_DEVTOOLS)
+
ifdef ALT_OUTPUTDIR
OUTPUTDIR = $(ALT_OUTPUTDIR)
- ANT_OPTIONS += -Dbuild.dir=$(ALT_OUTPUTDIR)/build
- ANT_OPTIONS += -Ddist.dir=$(ALT_OUTPUTDIR)/dist
+ ANT_OPTIONS += -Doutput.dir=$(ALT_OUTPUTDIR)
else
OUTPUTDIR = ..
endif
ifdef ALT_LANGTOOLS_DIST
+ ifdef ALT_BOOTDIR
+ ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR)
+ endif
ANT_OPTIONS += -Dbootstrap.dir=$(ALT_LANGTOOLS_DIST)/bootstrap
-endif
-
-ifdef FINDBUGS_HOME
- ANT_OPTIONS += -Dfindbugs.home=$(FINDBUGS_HOME)
+else
+ ifdef ALT_JDK_IMPORT_PATH
+ ANT_JAVA_HOME = JAVA_HOME=$(ALT_JDK_IMPORT_PATH)
+ endif
endif
ifdef ANT_HOME
@@ -124,26 +127,67 @@
endif
# Default target and expected 'do everything' target
-all: build
-
-# Standard make clobber target
-clobber: clean
+default: all
# All ant targets of interest
-ANT_TARGETS = build clean sanity # for now
+ANT_TARGETS = all source build dist clobber clean sanity
# Create a make target for each
$(ANT_TARGETS):
- $(ANT_JAVA_HOME) $(ANT) -version
- $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) $@
+ cd .. && $(ANT_JAVA_HOME) $(ANT) -version
+ cd .. && $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) $@
+
+# Help target
+define helpenvline
+@echo " $1";echo " $2"
+endef
+help:
+ @echo "----------------------------------------------------------"
+ @echo " "
+ @echo "Help information for this Makefile:"
+ @echo " "
+ @echo " Targets (see ant project information for descriptions):"
+ @echo " $(ANT_TARGETS)"
+ @echo " "
+ @echo " Environment or command line variables (all optional):"
+ $(call helpenvline, ALT_BOOTDIR,\
+ "JAVA_HOME to use when running ant")
+ $(call helpenvline, ALT_LANGTOOLS_DIST,\
+ "path to langtools repository dist directory")
+ $(call helpenvline, ALT_OUTPUTDIR,\
+ "path to root of output")
+ $(call helpenvline, DEBUG_CLASSFILES,\
+ "if set makes sure ant property javac.debug is true")
+ $(call helpenvline, JAVAC_SOURCE_ARG,\
+ "if SOURCE_LANGUAGE_VERSION not set uses this to set ant property javac.source")
+ $(call helpenvline, JAVAC_TARGET_ARG,\
+ "if TARGET_CLASS_VERSION not set uses this to set ant property javac.target")
+ $(call helpenvline, SOURCE_LANGUAGE_VERSION,\
+ "if set uses this to set ant property javac.source")
+ $(call helpenvline, QUIET,\
+ "if set will pass -quiet to ant")
+ $(call helpenvline, TARGET_CLASS_VERSION,\
+ "JAVA_HOME to use when running ant")
+ $(call helpenvline, VARIANT,\
+ "if set to OPT means optimized build will set javac.debug to false")
+ $(call helpenvline, VERBOSE,\
+ "if set will pass -verbose to ant")
+ @echo " "
+ @echo "----------------------------------------------------------"
+ @echo " "
+ @echo "Ant project file help information:"
+ @echo " "
+ @$(ANT_JAVA_HOME) cd .. && $(ANT) $(ANT_OPTIONS) -p
+ @echo " "
+ @echo "----------------------------------------------------------"
# Targets for Sun's internal JPRT build system
JPRT_ARCHIVE_BUNDLE=$(OUTPUTDIR)/jprt.zip
jprt_build_product jprt_build_debug jprt_build_fastdebug: all
$(RM) $(JPRT_ARCHIVE_BUNDLE)
( cd $(OUTPUTDIR)/dist && \
- zip -q -r $(JPRT_ARCHIVE_BUNDLE) . )
+ zip -q -r $(JPRT_ARCHIVE_BUNDLE) . )
# Declare these phony (not filenames)
-.PHONY: $(ANT_TARGETS) all clobber \
+.PHONY: $(ANT_TARGETS) \
jprt_build_product jprt_build_debug jprt_build_fastdebug
--- a/jaxp/make/build.properties Thu Sep 17 13:46:50 2009 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-#
-# Copyright 2007-2009 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.
-#
-
-# This is the JDK used to build and run the bootstrap version of javac.
-# The bootstrap javac is used to compile both boostrap versions of the
-# other tools, and product versions of all the tools.
-# Override this path as needed, either on the command line or in
-# one of the standard user build.properties files (see build.xml)
-
-# options for the <javac> tasks used to compile the tools
-javac.source = 7
-javac.target = 7
-javac.debug = true
-javac.no.jdk.warnings = -XDignore.symbol.file=true
-# set the following to -version to verify the versions of javac being used
-javac.version.opt =
-# in time, there should be no exceptions to -Xlint:all
-javac.lint.opts = -Xlint:all,-unchecked,-deprecation,-fallthrough,-cast,-serial -Werror
-
-# JVM memory size
-javac.memoryInitialSize = 128m
-javac.memoryMaximumSize = 256m
-
-#------------------------------------------------------------
--- a/jaxp/make/build.xml Thu Sep 17 13:46:50 2009 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-<?xml version="1.0"?>
-<!--
- Copyright 2007-2009 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.
--->
-
-<!--
- This is the main build file for the complete jaxp workspace.
- -->
-
-<project name="jaxp" default="all" basedir=".">
-
- <!-- Convenient shorthands for standard locations within the workspace. -->
- <property file="build.properties"/>
- <property name="topdir" value=".."/>
- <property name="build.dir" location="${topdir}/build"/>
- <property name="build.classes.dir" location="${build.dir}/classes"/>
- <property name="build.gensrc.dir" location="${build.dir}/gensrc"/>
- <property name="build.toolclasses.dir" location="${build.dir}/toolclasses"/>
- <property name="dist.dir" location="${topdir}/dist"/>
- <property name="dist.lib.dir" location="${dist.dir}/lib"/>
- <property name="make.dir" location="${topdir}/make"/>
- <property name="make.tools.dir" location="${make.dir}/tools"/>
- <property name="src.dir" location="${topdir}/src"/>
- <property name="src.classes.dir" location="${src.dir}/share/classes"/>
- <property environment="env"/>
-
- <target name="build" depends="banner, build-classes, build-tools">
- <mkdir dir="${dist.lib.dir}"/>
- <jar file="${dist.lib.dir}/classes.jar" basedir="${build.classes.dir}"/>
- <zip file="${dist.lib.dir}/src.zip" basedir="${src.classes.dir}"/>
- </target>
-
- <!-- Debug information -->
- <target name="sanity"
- description="display settings of configuration values">
- <echo level="info">ant.home = ${ant.home}</echo>
- <echo level="info">java.home = ${env.JAVA_HOME}</echo>
- <echo level="info">bootstrap.dir = ${bootstrap.dir}</echo>
- </target>
-
- <target name="build-tools" depends="-defs-pstrip">
- <mkdir dir="${build.dir}"/>
- <mkdir dir="${build.classes.dir}"/>
- <pstrip srcdir="${src.classes.dir}"
- destdir="${build.classes.dir}"
- includes="**/*.properties"/>
- </target>
-
- <target name="-defs-pstrip">
- <mkdir dir="${build.toolclasses.dir}"/>
- <javac srcdir="${make.tools.dir}/StripProperties"
- destdir="${build.toolclasses.dir}/"
- classpath="${ant.home}/lib/ant.jar"/>
- <taskdef name="pstrip"
- classname="StripPropertiesTask"
- classpath="${build.toolclasses.dir}/"/>
- </target>
-
- <target name="build-classes" depends="sanity">
- <mkdir dir="${build.dir}"/>
- <mkdir dir="${build.classes.dir}"/>
- <javac fork="true"
- srcdir="${src.classes.dir}"
- destdir="${build.classes.dir}"
- memoryInitialSize="${javac.memoryInitialSize}"
- memoryMaximumSize="${javac.memoryMaximumSize}"
- source="${javac.source}"
- debug="${javac.debug}"
- target="${javac.target}">
- <compilerarg value="-J-Xbootclasspath/p:${bootstrap.dir}/lib/javac.jar"/>
- <compilerarg line="${javac.version.opt}"/>
- </javac>
- </target>
-
- <target name="clean" description="Delete all generated files">
- <delete dir="${build.dir}"/>
- <delete dir="${dist.dir}"/>
- </target>
-
- <target name="banner">
- <echo>+---------------------------------------+</echo>
- <echo>+ Building JAXP Component +</echo>
- <echo>+---------------------------------------+</echo>
- </target>
-
-</project>
--- a/jaxp/make/jprt.properties Thu Sep 17 13:46:50 2009 -0700
+++ b/jaxp/make/jprt.properties Mon Sep 21 13:54:55 2009 -0700
@@ -34,8 +34,8 @@
solaris_x64_5.10,\
linux_i586_2.6,\
linux_x64_2.6,\
-windows_i586,\
-windows_x64
+windows_i586_5.0,\
+windows_x64_5.2
# The different build flavors we want
jprt.build.flavors=product,fastdebug
@@ -49,7 +49,6 @@
# Standard list of jprt test targets for this workspace
jprt.test.targets=
-# Directories needed to build
-jprt.bundle.src.dirs=make src
+# Directories needing to exclude from source bundles
jprt.bundle.exclude.src.dirs=build dist
--- a/jaxp/make/tools/StripProperties/StripProperties.java Thu Sep 17 13:46:50 2009 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,329 +0,0 @@
-/*
- * Copyright 2001 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.io.BufferedInputStream;
-import java.io.BufferedWriter;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Properties;
-
-/**
- * Reads a properties file from standard input and writes an equivalent
- * properties file without comments to standard output.
- */
-public class StripProperties {
-
- public static void main(String[] args) {
- StripProperties sp = new StripProperties();
- boolean ok = sp.run(args);
- if ( !ok ) {
- System.exit(1);
- }
- }
-
- static interface Log {
- void info(String msg);
- void verbose(String msg);
- void error(String msg, Exception e);
- }
-
- private String propfiles[];
- private String outfiles[] ;
- private int stripCount = 0;
- private boolean quiet = false;
- private Log log;
-
- public void setLog(Log log) {
- this.log = log;
- }
-
- private boolean parseOptions(String args[]) {
- boolean ok = true;
- if ( stripCount > 0 ) {
- String new_propfiles[] = new String[stripCount + args.length];
- String new_outfiles[] = new String[stripCount + args.length];
- System.arraycopy(propfiles, 0, new_propfiles, 0, stripCount);
- System.arraycopy(outfiles, 0, new_outfiles, 0, stripCount);
- propfiles = new_propfiles;
- outfiles = new_outfiles;
- } else {
- propfiles = new String[args.length];
- outfiles = new String[args.length];
- }
-
- for ( int i = 0; i < args.length ; i++ ) {
- if ( "-strip".equals(args[i]) && i+2 < args.length ) {
- propfiles[stripCount] = args[++i];
- outfiles[stripCount] = args[++i];
- stripCount++;
- } else if ( "-optionsfile".equals(args[i]) && i+1 < args.length ) {
- String filename = args[++i];
- FileInputStream finput = null;
- byte contents[] = null;
- try {
- finput = new FileInputStream(filename);
- int byteCount = finput.available();
- if ( byteCount <= 0 ) {
- log.error("The -optionsfile file is empty", null);
- ok = false;
- } else {
- contents = new byte[byteCount];
- int bytesRead = finput.read(contents);
- if ( byteCount != bytesRead ) {
- log.error("Cannot read all of -optionsfile file", null);
- ok = false;
- }
- }
- } catch ( IOException e ) {
- log.error("cannot open " + filename, e);
- ok = false;
- }
- if ( finput != null ) {
- try {
- finput.close();
- } catch ( IOException e ) {
- ok = false;
- log.error("cannot close " + filename, e);
- }
- }
- if ( ok = true && contents != null ) {
- String tokens[] = (new String(contents)).split("\\s+");
- if ( tokens.length > 0 ) {
- ok = parseOptions(tokens);
- }
- }
- if ( !ok ) {
- break;
- }
- } else if ( "-quiet".equals(args[i]) ) {
- quiet = true;
- } else {
- log.error("argument error", null);
- ok = false;
- }
- }
- return ok;
- }
-
- private boolean stripFiles(String propertiesPath, String outputPath) {
- boolean ok = true;
- Properties prop = new Properties();
- InputStream in = null;
- try {
- in = new BufferedInputStream(new FileInputStream(propertiesPath));
- prop.load(in);
- } catch ( FileNotFoundException e ) {
- log.error("Cannot access file " + propertiesPath, e);
- ok = false;
- } catch ( IOException e ) {
- log.error("IO exception processing file " + propertiesPath, e);
- ok = false;
- }
- if ( in != null ) {
- try {
- in.close();
- } catch ( IOException e ) {
- log.error("IO exception closing file " + propertiesPath, e);
- ok = false;
- }
- }
-
- OutputStream out = null;
- try {
- out = new FileOutputStream(outputPath);
- storeProperties(prop, out);
- out.flush();
- } catch ( IOException e ) {
- log.error("IO exception processing file " + outputPath, e);
- e.printStackTrace();
- ok = false;
- }
- if ( out != null ) {
- try {
- out.close();
- } catch ( IOException e ) {
- log.error("IO exception closing file " + outputPath, e);
- ok = false;
- }
- }
- return ok;
- }
-
- /**
- * Strip the properties filenames supplied, replacing their contents.
- * @param args Names of properties files to process and replace contents
- */
- public boolean run(String args[]) {
- if (log == null) {
- log = new Log() {
- public void error(String msg, Exception e) {
- System.err.println("ERROR: StripProperties: " + msg);
- if ( e != null ) {
- System.err.println("EXCEPTION: " + e.toString());
- e.printStackTrace();
- }
- }
- public void info(String msg) {
- System.out.println(msg);
- }
- public void verbose(String msg) {
- if (!quiet)
- System.out.println(msg);
- }
- };
- }
-
- boolean ok = true;
- ok = parseOptions(args);
- if ( ok && stripCount == 0 ) {
- log.error("options parsed but no files to compile", null);
- ok = false;
- }
- /* Need at least one file. */
- if ( !ok ) {
- //usage(log);
- } else {
- /* Process files */
- for ( int i = 0; i < stripCount && ok ; i++ ) {
- ok = stripFiles(propfiles[i], outfiles[i]);
- }
- }
- return ok;
- }
-
- // --- code below here is adapted from java.util.Properties ---
-
- private static final String specialSaveChars = "=: \t\r\n\f#!";
-
- /*
- * Converts unicodes to encoded \uxxxx
- * and writes out any of the characters in specialSaveChars
- * with a preceding slash
- */
- private static String saveConvert(String theString, boolean escapeSpace) {
- int len = theString.length();
- StringBuffer outBuffer = new StringBuffer(len*2);
-
- for(int x=0; x<len; x++) {
- char aChar = theString.charAt(x);
- switch(aChar) {
- case ' ':
- if (x == 0 || escapeSpace) {
- outBuffer.append('\\');
- }
- outBuffer.append(' ');
- break;
- case '\\':
- outBuffer.append('\\');
- outBuffer.append('\\');
- break;
- case '\t':
- outBuffer.append('\\');
- outBuffer.append('t');
- break;
- case '\n':
- outBuffer.append('\\');
- outBuffer.append('n');
- break;
- case '\r':
- outBuffer.append('\\');
- outBuffer.append('r');
- break;
- case '\f':
- outBuffer.append('\\');
- outBuffer.append('f');
- break;
- default:
- if ((aChar < 0x0020) || (aChar == 0x007e) || (aChar > 0x00ff)) {
- outBuffer.append('\\');
- outBuffer.append('u');
- outBuffer.append(toHex((aChar >> 12) & 0xF));
- outBuffer.append(toHex((aChar >> 8) & 0xF));
- outBuffer.append(toHex((aChar >> 4) & 0xF));
- outBuffer.append(toHex( aChar & 0xF));
- } else {
- if (specialSaveChars.indexOf(aChar) != -1) {
- outBuffer.append('\\');
- }
- outBuffer.append(aChar);
- }
- }
- }
- return outBuffer.toString();
- }
-
- /**
- * Writes the content of <code>properties</code> to <code>out</code>.
- * The format is that of Properties.store with the following modifications:
- * <ul>
- * <li>No header or date is written
- * <li>Latin-1 characters are written as single bytes, not escape sequences
- * <li>Line breaks are indicated by a single \n independent of platform
- * <ul>
- */
- private static void storeProperties(Properties properties, OutputStream out)
- throws IOException {
- BufferedWriter awriter;
- awriter = new BufferedWriter(new OutputStreamWriter(out, "8859_1"));
- for (Enumeration e = properties.keys(); e.hasMoreElements();) {
- String key = (String)e.nextElement();
- String val = (String)properties.get(key);
- key = saveConvert(key, true);
-
- /* No need to escape embedded and trailing spaces for value, hence
- * pass false to flag.
- */
- val = saveConvert(val, false);
- writeln(awriter, key + "=" + val);
- }
- awriter.flush();
- }
-
- private static void writeln(BufferedWriter bw, String s) throws IOException {
- bw.write(s);
- bw.write("\n");
- }
-
- /**
- * Convert a nibble to a hex character
- * @param nibble the nibble to convert.
- */
- private static char toHex(int nibble) {
- return hexDigit[(nibble & 0xF)];
- }
-
- /** A table of hex digits */
- private static final char[] hexDigit = {
- '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
- };
-}
--- a/jaxp/make/tools/StripProperties/StripPropertiesTask.java Thu Sep 17 13:46:50 2009 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-/*
- * Copyright 2007 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.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.DirectoryScanner;
-import org.apache.tools.ant.Project;
-import org.apache.tools.ant.taskdefs.MatchingTask;
-
-public class StripPropertiesTask extends MatchingTask {
- public void setSrcDir(File srcDir) {
- this.srcDir = srcDir;
- }
-
- public void setDestDir(File destDir) {
- this.destDir = destDir;
- }
-
- public void execute() {
- StripProperties.Log log = new StripProperties.Log() {
- public void error(String msg, Exception e) {
- log(msg, Project.MSG_ERR);
- }
- public void info(String msg) {
- log(msg, Project.MSG_INFO);
- }
- public void verbose(String msg) {
- log(msg, Project.MSG_VERBOSE);
- }
- };
- List<String> mainOpts = new ArrayList<String>();
- int count = 0;
- DirectoryScanner s = getDirectoryScanner(srcDir);
- for (String path: s.getIncludedFiles()) {
- if (path.endsWith(".properties")) {
- File srcFile = new File(srcDir, path);
- File destFile = new File(destDir, path);
- // Arguably, the comparison in the next line should be ">", not ">="
- // but that assumes the resolution of the last modified time is fine
- // grained enough; in practice, it is better to use ">=".
- if (destFile.exists() && destFile.lastModified() >= srcFile.lastModified())
- continue;
- destFile.getParentFile().mkdirs();
- mainOpts.add("-strip");
- mainOpts.add(srcFile.getPath());
- mainOpts.add(destFile.getPath());
- count++;
- }
- }
- if (mainOpts.size() > 0) {
- log("Generating " + count + " resource files to " + destDir, Project.MSG_INFO);
- StripProperties sp = new StripProperties();
- sp.setLog(log);
- boolean ok = sp.run((String[])mainOpts.toArray(new String[mainOpts.size()]));
- if (!ok)
- throw new BuildException("StripProperties failed.");
- }
- }
-
- private File srcDir;
- private File destDir;
-}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/nbproject/findbugs.settings Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,72 @@
+#FindBugs User Preferences
+#Tue Jun 30 18:33:11 PDT 2009
+detectorAbnormalFinallyBlockReturn=AbnormalFinallyBlockReturn|false
+detectorAbstractClassEmptyMethods=AbstractClassEmptyMethods|false
+detectorAbstractOverriddenMethod=AbstractOverriddenMethod|false
+detectorArrayBasedCollections=ArrayBasedCollections|false
+detectorArrayWrappedCallByReference=ArrayWrappedCallByReference|false
+detectorBloatedAssignmentScope=BloatedAssignmentScope|false
+detectorBloatedSynchronizedBlock=BloatedSynchronizedBlock|false
+detectorClassEnvy=ClassEnvy|false
+detectorCollectStatistics=CollectStatistics|false
+detectorConfusingAutoboxedOverloading=ConfusingAutoboxedOverloading|false
+detectorConstantListIndex=ConstantListIndex|false
+detectorCopiedOverriddenMethod=CopiedOverriddenMethod|false
+detectorCustomBuiltXML=CustomBuiltXML|false
+detectorCyclomaticComplexity=CyclomaticComplexity|false
+detectorDateComparison=DateComparison|false
+detectorDeclaredRuntimeException=DeclaredRuntimeException|false
+detectorDeletingWhileIterating=DeletingWhileIterating|false
+detectorDubiousListCollection=DubiousListCollection|false
+detectorFieldCouldBeLocal=FieldCouldBeLocal|false
+detectorFinalParameters=FinalParameters|false
+detectorFloatingPointLoops=FloatingPointLoops|false
+detectorInefficientStringBuffering=InefficientStringBuffering|false
+detectorInheritanceTypeChecking=InheritanceTypeChecking|false
+detectorJDBCVendorReliance=JDBCVendorReliance|false
+detectorListIndexedIterating=ListIndexedIterating|false
+detectorLiteralStringComparison=LiteralStringComparison|false
+detectorLocalSynchronizedCollection=LocalSynchronizedCollection|false
+detectorLostExceptionStackTrace=LostExceptionStackTrace|false
+detectorManualArrayCopy=ManualArrayCopy|false
+detectorMethodReturnsConstant=MethodReturnsConstant|false
+detectorNeedlessAutoboxing=NeedlessAutoboxing|false
+detectorNeedlessCustomSerialization=NeedlessCustomSerialization|false
+detectorNeedlessInstanceRetrieval=NeedlessInstanceRetrieval|false
+detectorNeedlessMemberCollectionSynchronization=NeedlessMemberCollectionSynchronization|false
+detectorNonCollectionMethodUse=NonCollectionMethodUse|false
+detectorNonOwnedSynchronization=NonOwnedSynchronization|false
+detectorNonRecycleableTaglibs=NonRecycleableTaglibs|false
+detectorOrphanedDOMNode=OrphanedDOMNode|false
+detectorOverlyConcreteParameter=OverlyConcreteParameter|false
+detectorParallelLists=ParallelLists|false
+detectorPartiallyConstructedObjectAccess=PartiallyConstructedObjectAccess|false
+detectorPossibleIncompleteSerialization=PossibleIncompleteSerialization|false
+detectorPossibleMemoryBloat=PossibleMemoryBloat|false
+detectorPossiblyRedundantMethodCalls=PossiblyRedundantMethodCalls|false
+detectorSQLInLoop=SQLInLoop|false
+detectorSection508Compliance=Section508Compliance|false
+detectorSillynessPotPourri=SillynessPotPourri|false
+detectorSloppyClassReflection=SloppyClassReflection|false
+detectorSluggishGui=SluggishGui|false
+detectorSpoiledChildInterfaceImplementor=SpoiledChildInterfaceImplementor|false
+detectorSpuriousThreadStates=SpuriousThreadStates|false
+detectorStaticArrayCreatedInMethod=StaticArrayCreatedInMethod|false
+detectorStaticMethodInstanceInvocation=StaticMethodInstanceInvocation|false
+detectorSuspiciousComparatorReturnValues=SuspiciousComparatorReturnValues|false
+detectorSuspiciousJDKVersionUse=SuspiciousJDKVersionUse|false
+detectorSuspiciousWaitOnConcurrentObject=SuspiciousWaitOnConcurrentObject|false
+detectorSyncCollectionIterators=SyncCollectionIterators|false
+detectorTailRecursion=TailRecursion|false
+detectorUnnecessaryStoreBeforeReturn=UnnecessaryStoreBeforeReturn|false
+detectorUnrelatedCollectionContents=UnrelatedCollectionContents|false
+detectorUnrelatedReturnValues=UnrelatedReturnValues|false
+detectorUseAddAll=UseAddAll|false
+detectorUseCharacterParameterizedMethod=UseCharacterParameterizedMethod|false
+detectorUseEnumCollections=UseEnumCollections|false
+detectorUseSplit=UseSplit|false
+detectorUseToArray=UseToArray|false
+detector_threshold=2
+effort=default
+filter_settings=Medium|BAD_PRACTICE,CORRECTNESS,I18N,MALICIOUS_CODE,MT_CORRECTNESS,PERFORMANCE,SECURITY,STYLE|false
+filter_settings_neg=|
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/nbproject/project.xml Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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">
+ <name>jaxp</name>
+ </general-data>
+ <general-data xmlns="http://www.netbeans.org/ns/freeform-project/2">
+ <!-- Do not use Project Properties customizer when editing this file manually. -->
+ <name>jaxp</name>
+ <properties/>
+ <folders>
+ <source-folder>
+ <label>jaxp</label>
+ <location>.</location>
+ <encoding>UTF-8</encoding>
+ </source-folder>
+ </folders>
+ <ide-actions>
+ <action name="build">
+ <target>build</target>
+ </action>
+ <action name="clean">
+ <target>clean</target>
+ </action>
+ <action name="rebuild">
+ <target>clean</target>
+ <target>build</target>
+ </action>
+ </ide-actions>
+ <view>
+ <items>
+ <source-file>
+ <location>build.xml</location>
+ </source-file>
+ </items>
+ <context-menu>
+ <ide-action name="build"/>
+ <ide-action name="rebuild"/>
+ <ide-action name="clean"/>
+ </context-menu>
+ </view>
+ <subprojects/>
+ </general-data>
+ <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/1"/>
+ <preferences xmlns="http://www.netbeans.org/ns/auxiliary-configuration-preferences/1">
+ <module name="org-netbeans-modules-editor-indent"/>
+ </preferences>
+ </configuration>
+</project>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/nbproject/sqe.properties Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,2 @@
+#Path to FindbugsSettingsFile (relative)
+findbugs.settings.file=findbugs.settings
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jaxp/patches/jaxp_src/README Mon Sep 21 13:54:55 2009 -0700
@@ -0,0 +1,5 @@
+
+This directory will hold any patches that need to be applied to the drop files.
+
+The patch order is defined in the ant build script properties.
+