Working on Kaffe/X-AWT port...

Per Bothner
Mon Aug 25 23:14:00 GMT 2003

Clemens Eisserer wrote:
> I only want to let you know, that I´m currently working on a port of 
> Kaffe´s X-awt to gcj.

> In my opinion a direct binding to the X-lib has the folllowing advantages:
> * No need for GTK or another library (only X of course)
> * Faster primitive drawing functions, especally important when using 
> "lightweight" toolkits based on component.
> * very portable: A simply x-wrapper (which implements only the needed 
> subset of the X-lib) should do the job.

While a AWT implementation that only depends on Xlib would be useful,
I think an implementation based on Gtk is more valuable at this point.
My initial concern is that Xlib is too low-level, so it will be a lot
of work, but if you're posting a working implementation that is less of
a concern.  Additionally, it will be difficult to integrate properly
with modern window managers, tools, and look-and-feel.  The main value
of an Xlib-only implementation would be reduced memory usage, which is
primarily an issue for small embedded devices.  Your "target market"
would be embedded devices/applications for which Gtk is too bloated,
but AWT on X11 is not too bloated.  That's a rather small segment, and
it is getting smaller every day.

> One question: This awt implementation uses an helper class stated in 
> kaffe/util/Ptr which seems a replacement for the pointer-emulation using 
> ints. They use it, because of 64-bit compatibility. But the Ptr class is 
> simply a abstract class, so could anybody please explain me, how that 
> works?

For CNI we use gnu.gcj.RawData.

> PS: Btw: Is lgpl a problem for gcj?

It could a problem if you want to make it part of libgcj, since our
policy is to use GPL+exception.  LGPL is compatible with this, but
is more restrictive.  And LGPL is especially problematic for small
embedded devices that use static linking, so the interest in AWT-on-Xlib
would be further reduced ...
	--Per Bothner

More information about the Java mailing list