On Tue, 11 Jul 2006, Doug Cutting wrote:

Andi Vajda wrote:
I'd be interested in doing this but what is it that we're after in 'supporting gcj' actually ?

I think it would sufficient to:

1. Compile only .jar and .class with gcj (not .java).
2. Pass all unit tests on a single platform.

Just last week, a PyLucene user got it to work on Solaris. I have no access to a Solaris machine to validate this. If I had my choice of platform, I'd pick one of (in order of preference):
  - Mac OS X (Intel or PPC)
  - a recent Red Hat Linux since this is the one most gcj developers use
  - Ubuntu 6.06

As for the version of gcj I'd suggest using:
  - Mac OS X Intel : gcj 4.0.2 (heavily patched)
  - Mac OS X PPC : gcj 3.4.6
  - Red Hat Linux : I'd try 4.2.0 downgrading until I find one that works,
    probably 4.1.1
  - Ubuntu 6.06: gcj 3.4.6

Unless junit can be made to run compiled under gcj, I see some more work on the unit tests side. This could be interesting too...

Even when only compiling .jar -> .so with gcj, a number of patches still need to be applied:
        http://svn.osafoundation.org/pylucene/trunk/patches.lucene

The patches to JavaCC-generated code should probably really become JavaCC patches. Have you looked into that?

Yes, I filed bug 53 almost two years ago, it's not gone very far :(
    https://javacc.dev.java.net/issues/show_bug.cgi?id=53

Most of the rest look like reasonable
changes to Lucene, except perhaps the "native matches", which looks a bit fishy for Lucene's trunk.

The native match patches are required because the libgcj that comes with gcj 3.4.x doesn't provide a regular expressions implementation. This is solved in PyLucene by using python's. I think gcj 4 comes with regex support but gcj 4 is not yet well supported on most platforms.

For the gcj platform story, see this pylucene-dev post I sent recently:
  http://lists.osafoundation.org/pipermail/pylucene-dev/2006-June/001106.html

Andi..

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to