Mon, 13 Dec 2010 17:35:57 -0800
6999460: Glassfish build with JDK 6 / 7 is 5x-10x slower on Windows than on Linux
Summary: Fixed JavacFileManager to not treat a non-existant pathname as a directory.
Reviewed-by: jjg
1 #
2 # Copyright (c) 2007, 2009, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation. Oracle designates this
8 # particular file as subject to the "Classpath" exception as provided
9 # by Oracle in the LICENSE file that accompanied this code.
10 #
11 # This code is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # version 2 for more details (a copy is included in the LICENSE file that
15 # accompanied this code).
16 #
17 # You should have received a copy of the GNU General Public License version
18 # 2 along with this work; if not, write to the Free Software Foundation,
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 #
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any
23 # questions.
24 #
26 # This is the JDK used to build and run the bootstrap version of javac.
27 # The bootstrap javac is used to compile both boostrap versions of the
28 # other tools, and product versions of all the tools.
29 # Override this path as needed, either on the command line or in
30 # one of the standard user build.properties files (see build.xml)
32 # boot.java.home = /opt/jdk/1.6.0
33 boot.java = ${boot.java.home}/bin/java
34 boot.javac = ${boot.java.home}/bin/javac
35 boot.javac.source = 6
36 boot.javac.target = 6
38 # This is the JDK used to run the product version of the tools,
39 # for example, for testing. If you're building a complete JDK, specify that.
40 # Override this path as needed, either on the command line or in
41 # one of the standard user build.properties files (see build.xml)
43 # target.java.home = /opt/jdk/1.7.0
44 target.java = ${target.java.home}/bin/java
46 # Version info -- override as needed
47 jdk.version = 1.7.0
48 build.number = b00
49 milestone = internal
51 # FIXME -- these need to match the standard values
52 # If we include date in full.version (ie for developer build)
53 # we will need to make sure the build is idempotent (i.e.
54 # repeated builds don't rebuild the tools, because of new
55 # timestamps
56 # FIXME -- need to include openjdk as needed
57 release = ${jdk.version}-${milestone}
58 bootstrap.release = ${release}_bootstrap
59 full.version = ${release}-${build.number}
60 bootstrap.full.version = ${bootstrap.release}-${build.number}
62 # options for the <javac> tasks used to compile the tools
63 javac.source = 7
64 javac.target = 7
65 javac.debug = true
66 javac.debuglevel = source,lines
67 javac.no.jdk.warnings = -XDignore.symbol.file=true
68 # set the following to -version to verify the versions of javac being used
69 javac.version.opt =
70 # in time, there should be no exceptions to -Xlint:all
71 javac.lint.opts = -Xlint:all,-deprecation -Werror
73 # options for the <javadoc> task for javac
74 javadoc.jls3.url=http://java.sun.com/docs/books/jls/
75 javadoc.jls3.cite=<a href="${javadoc.jls3.url}">The Java Language Specification, Third Edition</a>
76 javadoc.jls3.option=-tag "jls3:a:See <cite>${javadoc.jls3.cite}</cite>:"
78 # jtreg, used to run the JDK regression tests
79 # See http://openjdk.java.net/jtreg/
80 # Override this path as needed, either on the command line or in
81 # one of the standard user build.properties files (see build.xml)
83 # jtreg.home = /opt/jtreg/4.1
85 # findbugs
86 # See http://findbugs.sourceforge.net/
87 # Override this path as needed, either on the command line or in
88 # one of the standard user build.properties files (see build.xml)
90 # findbugs.home = /opt/findbugs/1.2.1
92 # vizant (graph visualization tool for Ant)
93 # See http://vizant.sourceforge.net/
94 # Override this path as needed, either on the command line or in
95 # one of the standard user build.properties files (see build.xml)
97 # vizant.jar = /opt/vizant/0.1.2/vizant-0.1.2.jar
98 # dot = dot
100 #------------------------------------------------------------
102 # The following properties define the packages for each of the tools.
103 # Syntactically, they should be suitable as arguments for the "includes"
104 # parameter of Ant filesets. In particular, note the trailing '/'.
106 javac.includes = \
107 javax/annotation/processing/ \
108 javax/lang/model/ \
109 javax/tools/ \
110 com/sun/source/ \
111 com/sun/tools/javac/
113 javac.tests = \
114 tools/javac
116 #
118 javadoc.includes = \
119 com/sun/javadoc/ \
120 com/sun/tools/javadoc/
122 javadoc.tests = \
123 tools/javadoc/
125 #
127 doclets.includes = \
128 com/sun/tools/doclets/
130 doclets.tests = \
131 com/sun/javadoc/
133 #
135 javah.includes = \
136 com/sun/tools/javah/
138 javah.tests = \
139 tools/javah/
141 #
143 javap.includes = \
144 com/sun/tools/classfile/ \
145 com/sun/tools/javap/ \
146 sun/tools/javap/
148 javap.tests = \
149 tools/javap/
151 #
153 apt.includes = \
154 com/sun/mirror/ \
155 com/sun/tools/apt/
157 apt.tests = \
158 tools/apt/
160 #
162 # The following files require the latest JDK to be available.
163 # The API can be provided by using a suitable boot.java.home
164 # or by setting import.jdk
165 require.latest.jdk.files = \
166 com/sun/tools/javac/nio/*.java
168 # The following files in the import jdk source directory are required
169 # in order to compile the files defined in ${require.latest.jdk.files}
170 #
171 # For NIO, the list of stub files is defined by the contents of the primary
172 # API packages, together with such types that may be required in order to
173 # compile the stubs. Some of these dependencies would go away if the stub
174 # generator were to be improved -- e.g. by removing unnecessary imports.
175 #
176 import.jdk.stub.files = \
177 java/io/File.java \
178 java/nio/file/**.java \
179 java/nio/file/attribute/**.java \
180 java/nio/file/spi/**.java \
181 java/nio/channels/AsynchronousChannel.java \
182 java/nio/channels/AsynchronousFileChannel.java \
183 java/nio/channels/CompletionHandler.java \
184 java/nio/channels/SeekableByteChannel.java
186 # The following value is used by the main jtreg target.
187 # An empty value means all tests
188 # Override as desired to run a specific set of tests
189 jtreg.tests =