These are the results of Google Summer of Code (tm) project ~Make OpenJDK LSB-compliant~. The main working dir is openjdk7. Changes from it are backported to other branches. To get the directory, use git to get the repo http://coldattic.info/openjdk7.git Follow generic guidelines to build openjdk7 (this includes tuning environment and downloading binary plugs from Sun's site), but when you'll be typing the final make, add a variable: make OPENJDK_LSB_VERSION=40 To build OpenJDK you need development version of LSBCC; you can get it from LF bazaar. There are some notes about interfaces used and PE's stuff of sorts (in investigation/ folder), showing how I investigated necessity of some interfaces in openjdk. Patches that can go to upstream are marked with JJJ prefix in git log. For info on what interfaces, types and header I had to include to build openjdk7, please, refer to openjdk7-lsb-overrides/lsb_config.h and openjdk7-lsb-overrides/include/ directory. The notation is the following: __LSB_PROVIDES_something is defined iff the application can find interface without help of additional overrides. More fine list may be found in http://bugs.linuxbase.org/show_bug.cgi?id=2674. For information on how to backport changes, clone repository http://coldattic.info/lsbopenjdkmerge.git and read instructions there. It will ask you to also clone http://coldattic.info/icedtea6.git To build .deb packages with icedtea, unpack sources from debian/ directory here on ftp (orig.tar.gz) and apply diff (.diff.gz). Then do dpkg-buildpackage -rfakeroot or something else if you know about debian packaging more than me. To see what I changes in makefiles that create packages, download ubuntu debian sources for their openjdk-6 package (it should include icedtea, as noticed in the description of the proper package) with use of apt-get source repositories. It will help you with the dependencies. Hope that helps. Should you have any questions, contact via e-mail or Jabber.