GSoC Introduction: OpenJDK port

Blog post by hamish on Fri, 2012-04-27 16:38

My Google Summer of Code project for this year is to provide a complete port of OpenJDK 7 to Haiku. Over the past few months I've been working on putting together a bootstrapping environment for building OpenJDK on Haiku, and porting the virtual machine and core libraries. Over the summer I hope to bring the port to a mostly-complete state by adding support for AWT, Java2d and jsound. This will allow Swing and AWT-based applications to run on Haiku. Here is an outline of my plans:

Community bonding period

  • Continue to work on getting the virtual machine and core libraries self-hosting.
  • Eradicate as many bugs as possible from the virtual machine and core libraries to give me a stable base to work from.
  • Familiarise myself with Bryan Varner and Andrew Bachmann's AWT/Java2d code from their Java 1.4.2 port, and see what needs to be done to update it to the OpenJDK 7 codebase.

Summer

  • Update the existing AWT/J2d port to the OpenJDK 7 codebase and implement the missing functionality.
  • Write a jsound port using the Media and MIDI kits.

Future

  • Get my work uploaded to the Haiku port project at OpenJDK to make it more official.
  • Create a Haiku look & feel for Swing.
  • Merge in the updates from the jdk7u project.
You can find my work and a quick attempt at build instructions on Bitbucket: https://bitbucket.org/hamishm/haiku-jdk. The entire source is split across multiple repositories; check my Bitbucket profile for the rest. In the coming weeks I also hope to release some binaries so interested parties can more easily test it out.