OpenEmbedded is a cross compilation aware build system (consisting of a set of tools and package description files) aimed at building entire (currently Linux based) distributions from sources. Examples for distributions using it today are Familiar and OpenZaurus.
So what's in already?
- GNU Classpath (built with jikes)
- fastjar (available at build time for jar creation)
- Jikes (available both at build time and as a package)
- Kaffe (work in progress. builds but at least on ARM doesn't work yet.)
The road ahead obviously includes cross compilation to native code using gcj. Basically it should be as simple as enabling gcj in the gcc-cross build, but I haven't got to looking into that closely yet.