-
Bug
-
Resolution: Duplicate
-
P3
-
1.3.1, 5.0, 6
-
generic
-
generic, solaris_8
results in a separate directory from the original build. That is
because the set of class files produced during the rebuild may be
different from the set of class files produced during the bootstrap.
We don't want to keep the temporary bootstrap class files in the final
output. Rather, we want all files in rt.jar to have been built by the
compiler that has been bootstrapped.
Turns out that the copying of classes from newclasses to classes is also a problem. This newclasses tree can contain more classes that those identified by the java sources list.
Classes should probably not be copied in a blind tar file way like it is now in common/Classes.gmk.
Additional problem is that there is a tar copy of classes from some newclasses directory to the classes directory in the recompile makefiles. These newclasses sometimes contain class files not in the recompile lists explicitly, but part of the java compilation needed for the explicit list. When the entire newclasses tree is copied over to the classes tree it can clobber some class files that were newer, resulting in two situations, A) Repeated recompiles of some java source files because the newclasses class files have older time stamps yet the newclasses classfiles keep getting tar on top of the newly compiled classes, and B) The classes tree can end up with previously compiled classfiles that don't reflect the actual state of the source files.
If the recompile source list included every possible java source used and compiled in the recompile area this would be solved, but better yet, we should NEVER tar class files into the classes tree. It's too blind a copy action.
See 6377350 for examples of how the recompile of touched java sources doesn't work on incremental builds.
- duplicates
-
JDK-6377350 modified files are not properly recompiled (sun/javac/recompile tar's old classfiles into classes)
- Closed
-
JDK-6575893 Restructure j2se workspace for langtools separation, simplier building
- Closed
- relates to
-
JDK-6328941 Add JSR 269 packages to default classpath
- Resolved
-
JDK-4970151 Bootstrap javac needs to be invoked with -target 1.5
- Resolved
-
JDK-6205213 GBK.java and several other java files always get compiled when build make/sun/awt
- Closed
-
JDK-6352832 Building sun.awt.DebugHelper class is not performed from make/sun/awt
- Closed
-
JDK-6237164 Clean up use of JAVA* and JAVA*_CMD macros in workspaces (see -J-client usage)
- Closed