Oracle replace includeDB Mechanism

Oracle to Drop includeDB from JDK

Jessica Thornsby

Java SE licensees have received letters, regarding some changes in the HotSpot build process.

Java SE Licensee Tni has blogged about a letter he recently received
from Oracle. The letter stated that Oracle were planning on
eliminating the includeDB mechanism from the HotSpot build process.
This will start with JDK7 and forthcoming updates of the JDK 6.
This mechanism consisted of the MakeDeps tool and plain-text
database files with recorded header files dependencies, and was in
charge of generating necessary header files including list for each
source file at compile time. It also generated precompiled headers
that reduced compile times for Visual C and gcc compilers. However,
according to Oracle “this approach became a maintenance issue and
it also creates unnecessary difficulties for using modern IDEs for
code development.” The includeDB mechanism will now be replaced by
a static list of header files and all include files will be listed
at the top of each source file.

The current development headless launcher – ‘gamma launcher’ –
will be replaced by a ‘fusion’ launcher and will have a new switch
for launch inside a debugger. Oracle are currently planning on
implementing the launcher as a shell script that wraps around the
gamma launcher on Solaris and Linux.

“Switching to the standard include model will enhance code
maintainability. We do not expect this will be affecting Java SE
licensees port in any major way, but we would like to give you an
advanced notice so that you can plan your upcoming release
accordingly,” concludes the letter.

Tni views this as a positive thing, as includeDB was a
non-standard way of handling C++ header files, which might have
solved some problems back in the olden days but “with modern IDEs
it’s more of a hindrance.” He predicts this will lower the bar for
new developers and will allow IDEs to be used with a minimum amount
of tweaking.

“So, if you want to work on OpenJDK this is good for you. If you
want others to work on OpenJDK this is also good for you. You’re

comments powered by Disqus