building the compiler

Jonathan Gibbons Jonathan.Gibbons at Sun.COM
Mon Jun 25 09:08:24 PDT 2007

There are currently four supported ways to build the compiler, for  
those that are counting, and for some value of supported. That is  
three too many, IMO.

We are working to simplify things.

[Standard disclaimer: this is a description of work in progress;  
actual events may differ :-) ]

One big step we are investigating is to reorganize the "language  
tools" into a different area. Within Sun, this will be a different  
TeamWare workspace (for now.) On OpenJDK, this will mean a different  
top level directory in the Subversion repository. When we go to  
Mercurial, it will mean a different Mercurial repository. The bottom  
line is that it will not in any way affect the final OpenJDK  
deliverables, just the way the source files are organized and built.

What will be affected: javac, javadoc, javah, javap, and apt.

What this means is that we will have the opportunity for a smaller  
simpler build for these tools.   The result of the build will be used  
when building the rest of the j2se workspace. Actually, for j2se  
developers, they'll have the choice of importing pre-built binaries  
for the language tools the same way that they can import Hotspot today.

Initially, we will provide a Makefile to build classes.jar and, as needed by the rest of the build. (Plus some other details  
for demos, samples, etc). Then, the thought is to change to use Ant  
for the langtools, and to reduce the Makefile to be a wrapper around  
the Ant targets.  Finally, the "language tools" NetBeans projects  
((currently, for compiler and javadoc) should be converted to use the  
Ant build file.  And presto, we should have a single simpler build  
system for the "langtools".

-- Jon G.

More information about the compiler-dev mailing list